WEB SERVER CONTROL - giakhoa.files.wordpress.com = "_blank"; Kết qu ả: 16 ... 31...

Preview:

Citation preview

WEB SERVER CONTROL

2

NỘI DUNG

Điều khiển cơ bản chuẩn – Standard

Điều khiển kiểm tra dữ liệu

Một số điều khiển khác

Đối tượng ViewState

3

Điều khiển cơ bản chuẩn – Standard

Lý do nên sử dụng Standard Web Control

Các thuộc tính chung

Label

TextBox

Image

Button, ImageButton, LinkButton

HyperLink

Listbox và DropdownList

Checkbox, RadioButton

CheckBoxList, RadioButtonList

4

Những lý do

Những lý do nên sửdụng ASP.NetStandard Web Control:

�Đơn giản

�Đồng nhất

�Hiệu quả

5

Các thuộc tính chung

6

Các thuộc tính chung

7

Label

lblA.Text = "Đây là chuỗi văn bản thường";

lblB.Text = "<B>Còn đây là chuỗi văn bản được in đậm</B>";

8

TextBox

Text: Nội dung chứa trong Textbox

TextMode:�SingleLine: Hiển thị và nhập liệu 1 dòng văn bản

�MultiLine: Hiển thị và nhập liệu nhiều dòng vănbản

�Password: Hiển thị dấu * thay cho các ký tự cótrong Textbox.

Rows: Số dòng văn bản được hiển thị khiTextMode = MultiLine

Maxlength: Qui định số ký tự tối đa đượcnhập vào cho TextBox

9

TextBox

Wrap: Quy định văn bản có được phép tựđộng xuống dòng khi kích thước ngang củacủa điều khiển không đủ để hiển thịMặc định là True - tự động xuống dòng

10

Image

ImageURL: Đường dẫn đến tập tin hình ảnhcần hiển thị.

AlternateText: Chuỗi văn bản sẽ hiển thị khitập tin được thiết lập trong thuộc tínhImageURL không hiển thị được

11

Image

ImageAlign: Vị trí hiển thị giữa hình và nộidung văn bản:

NotSet

Left

Middle

TextTop

Right

12

Button, ImageButton, LinkButton

13

Button, ImageButton, LinkButton

Các điều khiển này mặc định đều là các nútSubmit Button, mỗi khi được nhấn vào sẽPostBack về Server

Các thuộc tính chung

Ngoài ra còn có các thuộc tính ImageURL, ImageAlign và AlternateText như điều khiểnImage

14

HyperLink

ImageURL: Hình hiển thị trên điều khiển

Text: Chuỗi văn bản sẽ được hiển thị trên điều

khiển cả ImageURL và Text được thiết lập � thuộc

tính ImageURL được ưu tiên, thuộc tính Text sẽđược hiển thị như Tooltip

NavigateUrl: Đường dẫn cần liên kết đến

Target: Xác định cửa sổ sẽ hiển thị cho mối liên kết

� _blank: Hiển thị trang liên kết ở một cửa sổ mới

�_self: Hiển thị trang liên kết tại chính cửa sổ chứa liên kết

đó

�_parent: Hiển thị trang liên kết ở frame cha

15

HyperLink

Ví dụ:

hplASPNet.Text = "Trang chủ ASP.Net";

hplASPNet.ImageUrl = "~/Pictures/logoaspnet.jpg";

hplASPNet.NavigateUrl ="http://www.asp.net";

hplASPNet.Target = "_blank";

Kết quả:

16

Listbox và DropdownList

ListboxDropdownList

17

Listbox và DropdownList

AutoPostBack: điều khiển có được phép tự động

PostBack về Server khi chỉ số bị thay đổi? Mặc định

là False

Items: tập hợp chứa các mục chọn của điều khiển

Rows: chiều cao của ListBox theo số dòng hiển thị

SelectionMode: cách thức chọn các mục trong

Listbox

�Single: Chỉ được chọn một mục có trong danh sách

�Multiple: Cho phép chọn nhiều lựa chọn

18

Listbox và DropdownListTìm hiểu về tập hợp Items� Add: Thêm mục mới vào cuối danh sách

Items.Add(<String>);� Insert: Thêm mục mới vào danh sách tại một vị trí nào đó

Items.Insert(<index>,<String>);� Count: Trả về số mục (Item) có trong danh sách

Items.Count;

� Remove: Xóa đối tượng Item tại ra khỏi danh sách

Items.Remove(<Chuoi>);

Nếu có nhiều giá trị giống nhau trong danh sách, chỉ có mục chọn đầutiên bị xóa

� RemoveAt: Xóa một item tại vị trí index ra khỏi danh sách

Items.RemoveAt(<index>);

� Clear: xóa tất cả những Item có trong danh sách

Items.Clear();

19

Listbox và DropdownList

Xử lý mục chọn

�Selected: kiểm tra xem mục đó có được chọn

hay không

�SelectedIndex: chỉ số của mục được chọn

�SelectedItem: mục được chọn

�SelectedValue: giá trị của mục được chọn

Trong trường hợp chọn nhiều mục,

SelectedIndex, SelectedItem và SelectedValue sẽtrả về giá trị mục chọn đầu tiên.

20

Listbox và DropdownList

Ví dụ: Nhấn nút Chọn � hiển thị danh sách địadanh được chọn

21

Listbox và DropdownList

Thêm item cho listbox

22

Listbox và DropdownList

Xử lý cho nút nhấn

23

Checkbox, RadioButton

Checked: Cho biết trạng thái của mục chọn

TextAlign: Qui định vị trí hiển thị của điều khiển so với chuỗi văn bản

AutoPostBack: có được phép tự động PostBack vềServer khi các mục chọn thay đổi. Mặc định củathuộc tính này là False

GroupName (RadioButton): Tên nhómThuộc tính này được sử dụng để nhóm các điềukhiển RadioButton lại thành 1 nhóm

24

CheckBoxList, RadioButtonList

Dùng để tạo ra một nhóm CheckBox/Radio Button

Đây là điều khiển danh sách nên nó cũng có thuộc

tính Items chứa tập hợp các mục chọn nhưListBox/DropDownList

Các thuộc tính

�RepeatColumns: số cột hiển thị.

�RepeatDirection: hình thức hiển thị• Vertical: Theo chiều dọc

• Horizontal: Theo chiều ngang

�AutoPostBack: có được phép tự động PostBack về Server

khi các mục chọn của điều khiển bị thay đổi.

Mặc định là False

25

CheckBoxList, RadioButtonList

Ví dụ:

26

CheckBoxList, RadioButtonList

27

Điều khiển kiểm tra dữ liệu

28

Điều khiển kiểm tra dữ liệu

29

Điều khiển kiểm tra dữ liệu

rfvNhap_lai.Display = Static

30

Điều khiển kiểm tra dữ liệu

rfvNhap_lai.Display = Dynamic

31

Điều khiển kiểm tra dữ liệu

Required Field Validator

Compare Validator

Range Validator

Regular Expression Validator

Custom Validator

Validation Summary

32

Required Field Validator

Kiểm tra giá trị trong điều khiển phải đượcnhập

Thuộc tính

�InitialValue: Giá trị khởi động

Giá trị bạn nhập vào phải khác với giá trị của

thuộc tính này. Giá trị mặc định của thuộc tính

này là chuỗi rỗng

33

Compare ValidatorKiểm tra ràng buộc miền giá trị, kiểu dữ liệu, liênthuộc tính

Các thuộc tính�ControlToCompare: Tên điều khiển cần so sánh giá trị

Nếu chọn giá trị của thuộc tính Operator = DataTypeCheck thì không cần phải xác định giá trị chothuộc tính này

�Operator: Qui định phép so sánh, kiểm tra kiểu dữ liệu: Equal (Đây là giá trị mặc định), GreaterThan, GreaterThanEqual, LessThan, LessThanEqual, NotEqual, DataTypeCheck

�Type: Qui định kiểu dữ liệu để kiểm tra hoặc so sánh: String, Integer, Double, Date, Currency

�ValueToCompare: Giá trị cần so sánh

34

Range Validator

Điều khiển này được dùng để kiểm tra giá trị trong

điều khiển phải nằm trong đoạn [min-max]

Các thuộc tính

�MinimumValue: Giá trị nhỏ nhất

�MaximumValue: Giá trị lớn nhất

�Type: Xác định kiểu để kiểm tra dữ liệu. Có thể thực hiệnkiểm tra trên các kiểu dữ liệu sau:

• String

• Integer

• Double

• Date

• Currency

35

Regular Expression Validator

Kiểm tra giá trị của điều khiển phải theo mẫuđược qui định trước: địa chỉ email, số điệnthoại, mã vùng, số chứng minh thư…

Thuộc tính:

�ValidationExpression: Qui định mẫu kiểm tra dữliệu.

36

Regular Expression Validator

Bảng mô tả các ký hiệu thường sử dụng trongValidation Expression

37

Custom Validator

Cho phép tự viết hàm xử lý kiểm tra lỗi

Sự kiện

�ServerValidate: Đặt các xử lý kiểm tra dữ liệu

trong sự kiện này. Việc kiểm tra này được thực

hiện ở Server

38

Validation Summary

Hiển thị ra bảng lỗi - tất cả các lỗi hiện có trêntrang Web.

Nếu điều khiển nào có dữ liệu không hợp lệ, chuỗi thông báo lỗi - giá trị thuộc tínhErrorMessage của Validation Control sẽ đượchiển thị. Nếu giá trị của thuộc tínhErrorMessage không được xác định, thôngbáo lỗi đó sẽ không được xuất hiện trongbảng lỗi

39

Validation Summary

Các thuộc tính

�HeaderText: Dòng tiêu đề của thông báo lỗi

�ShowMessageBox: bảng thông báo lỗi có được

phép hiển thị như cửa sổ MessageBox hay không

40

Validation Summary

Các thuộc tính

�ShowSummary: Qui định bảng thông báo lỗi có

được phép hiển thị hay không

41

Điều khiển kiểm tra dữ liệu - Ví dụ

42

Điều khiển kiểm tra dữ liệu - Ví dụ

43

Điều khiển kiểm tra dữ liệu - Ví dụ

44

Điều khiển kiểm tra dữ liệu - Ví dụ

Thuộc tính Text của các điều khiển kiểm tra dữ liệu đều là: (*)

45

Một số điều khiển khác

Literal

AdRotator

Calendar

File Upload

Panel và PlaceHolder

MultiView

46

Literal

Tương tự như điều khiển Label

Điểm khác biệt chính giữa Label và Literal làkhi hiển thị nội dung lên trang web (lúc thihành), điều khiển Literal không tạo thêm mộttag Html nào cả, còn Label sẽ tạo ra một tag span (được sử dụng để lập trình ở phíaclient)

47

AdRotator

Tạo ra các banner quảng cáo cho trang web, nó tự động thay đổi các hình ảnh (đã đượcthiết lập trước) mỗi khi có yêu cầu, PostBackvề server

Thuộc tính

�AdvertisementFile: Tên tập tin dữ liệu (dưới

dạng xml) cho điều khiển

48

AdRotator

Cú pháp của tập tin Advertisement (*.xml)

<Advertisements>

<Ad><ImageUrl>Đường dẫn đến tập tin hình ảnh</ImageUrl>

<NavigateUrl>Đường dẫn đến liên kết</NavigateUrl><AlternateText>Chuỗi văn bản được hiển thị nhưTooltip</AlternateText><Keyword>Từ khóa dùng để lọc hình ảnh</Keyword>

<Impressions>Tần suất hiển thị của hình

ảnh</Impressions></Ad>

</Advertisements>

49

AdRotator

Lưu ý: Phải nhập đúng các giá trị trong tag như mẫu

trên, có phân biệt hoa thường

Trong đó:

ImageUrl: Đường dẫn đến một tập tin hình ảnh

NavigateUrl: Đường dẫn đến trang web sẽ được

liên kết đến khi người dùng nhấn vào hình ảnh đang

hiển thị

AlternateText: Giá trị này sẽ được hiển thị nếu nhưđường dẫn đến tập tin hình ảnh không tồn tại. Đối

với một số trình duyệt, tham số này được hiển thịnhư ToolTip của hình quảng cáo.

50

AdRotator

Keyword: phân loại các quảng cáo. Ta có thể lọc

các quảng cáo theo một điều kiện nào đó.

Impressions: tần suất hiển thị của hình ảnh. Giá trịnày càng lớn, khả năng hiển thị càng nhiều.

KeywordFilter: Được dùng để chọn lọc và hiển thịnhững hình quảng cáo có giá trị của tham sốKeyword = giá trị của tham số này

Target: Qui định cửa sổ hiển thị trang liên kết

�_blank: Trang liên kết sẽ được mở ở một cửa sổ mới.

�_self: Trang liên kết sẽ được mở ở chính cửa sổ chứađiều khiển.

�_parent: Trang liên kết sẽ được mở ở cửa sổ cha

51

AdRotator

Sự kiện:

�AdCreated: Xảy ra khi điều khiển tạo ra các

quảng cáo

52

AdRotator – Ví dụBước 1: Thiết kế giao diện

53

AdRotator – Ví dụBước 2: Tạo tập tin dữ liệu: Quangcao.xml

�Sử dụng chức năng Add New Item…

54

AdRotator – Ví dụNhập vào cú pháp qui định cho tập tin Quangcao.xml (theo cú pháp của tập tin Advertisement)

55

AdRotator – Ví dụBước 3: Thiết lập thuộc tính cho điều khiển

adQuangcao

�AdvertisementFile: Quangcao.xml

�Target: _blank (Khi nhấn vào sẽ hiển thị liên kết ởcửa sổ mới.)

�KeywordFilter: Không thiết lập (Hiển thị tất cả các

hình ảnh)

Bước 4: Thi hành ứng dụng

56

Calendar

Thuộc tính�DayHeaderStyle: hình thức hiển thị tiêu đề của

các ngày trong tuần

�DayStyle: hình thức hiển thị của các ngày trongđiều khiển

�NextPrevStyle: hình thức hiển thị của thángtrước/sau của tháng đang được chọn

�SelectedDayStyle: Qui định hình thức hiển thịcủa ngày đang được chọn

57

Calendar

Thuộc tính�TitleStyle: hình thức hiển thị dòng tiêu đề của

tháng được chọn

�TodayDayStyle: hình thức hiển thị của ngày hiệnhành (trên server)

�WeekendDayStyle: hình thức hiển thị của cácngày cuối tuần (thứ 7, chủ nhật)

�OtherMonthDayStyle: hình thức hiển thị của cácngày không nằm trong tháng hiện hành

58

Calendar

Sự kiện

�SelectionChanged: xảy ra khi bạn chọn một

ngày khác với giá trị ngày đang được chọn hiện

hành

�VisibleMonthChanged: xảy ra khi bạn chọn

tháng khác với tháng hiện hành

59

Calendar – Ví dụ

60

Calendar – Ví dụ

Bước 1: Tạo Calendard vào trang

61

Calendar – Ví dụ

Bước 2: Chọn Auto Format (Chọn mẫu địnhdạng)

62

Calendar – Ví dụXử lý sự kiện:

63

File Upload

Cho phép người sử dụng Upload file từ chínhứng dụng Web của mình. File sau khi Upload có thể lưu trữ ở 1 nơi nào đó có thể là trên ổcứng hay trong Database

Thuộc tính:

64

File UploadPhương thức:�Focus: chuyển focus vào control�SaveAs: lưu file được upload lên hệ thống

Thuộc tính PostedFile cho phép lấy thông tin từ File upload được bao bọc trong đối tượngHttpPostedFile

Lớp HttpPostedFile gồm các thuộc tính sau:�ContentLength: Lấy về kích thước của File Upload tính

theo byte

�ContentType: Lấy kiểu MIME của File Upload�FileName: lấy tên của file được upload

� InputStream: lấy về file đã upload (as a stream)

Lớp HttpPostedFile chỉ hỗ trợ phương thức�SaveAs: Cho phép bạn lưu file được upload lên hệ thống.

65

File Upload – Ví dụ

Nếu thành công

66

File Upload – Ví dụCode:

67

Panel và PlaceHolder

Dùng để chứa các điều khiển khác

Panel cho phép chúng ta kéo những điều khiển vào

bên trong nó lúc thiết kế, còn điều khiển PlaceHolder

thì không

Các thuộc tính:

�DefaultButton: định nghĩa một button mặc định trong panel

�Direction: hướng hiển thị nội dung trong panel

�GroupingText: trình bày Panel như 1 Fieldset với một chú

giải riêng biệt

�HorizontalAlign: chỉ ra hướng ngang thể hiện nội dung của

panel

�ScrollBars: bật/ tắt hiển thị scrollbars

68

Panel và PlaceHolder

69

Panel và PlaceHolder

70

MultiView

Cho phép ẩn hoặc hiện các phần khác nhaucủa trang khi, rất tiện ích khi tạo một TabPage

Điều khiển MultiView chứa đựng 1 hoặc nhiềuđiều khiển View, sử dụng Multiview để lựachọn các điều khiển View để trình bày

Thuộc tính

�ActiveViewIndex: chọn điều khiển View được

đưa ra hiển thị bằng chỉ số Index

�Views: lấy về tập hợp các điều khiển View chứa

đựng trong điều khiển MultiView

71

MultiView

Phương thức

�GetActiveView: lấy về thông tin của View được

lựa chọn

�SetActiveView: thiết lập View được hiên thị

Sự kiện:

�ActiveViewChanged: Xảy ra khi điều khiển View

được lựa chọn

72

MultiView – Ví dụ

73

MultiView – Ví dụTrên trang thiết kế tạo: 1 Multiview1 bên tronggồm 3 View (View1 View2, View3)

Tạo Control Menu1 từ nhóm Control Navigation : Gồm 3 Tab (Tab1, Tab2, Tab3)

�Tạo Control Menu vào Form

74

MultiView – Ví dụ�Chọn Edit Menu Item

75

MultiView – Ví dụ�Lần lượt khái báo thuộc tính:

• Các nhãn (Text) là: Tab 1, Tab 2, Tab 3

• Các giá trị (Value) tương ứng là: 0 , 1, 2

• Orientation: Horizaltal (Menu hướng ngang)

76

MultiView – Ví dụBổ sung nội dung vào các view tương ứng

77

MultiView – Ví dụXử lý sự kiện

78

Đối tượng ViewState

Lưu lại những thông tin của trang web sau khiweb server gởi kết quả về cho Client

Các trang web khi được tạo sẽ cho phép sửdụng đối tượng ViewState thông qua thuộctính EnableViewState = True.

Gán giá trị cho ViewState:

ViewState("Tên trạng thái") = <giá trị>;

Nhận giá trị từ đối tượng ViewState:

<biến> = ViewState("Tên trạng thái");

79

Đối tượng ViewState

80

Đối tượng ViewState

Về bản chất, các giá trị trong ViewState đượclưu trong một điều khiển hidden

Chọn chức năng View | Source từ browser

81

Trao đổi, thảo luận

Recommended