TRƯ NG Đ I H C KHOA H C T NHIÊN KHOA CÔNG NGH THÔNG TIN B MÔN CÔNG NGH PH N M M -----
Standard Server Control Mơn học: Lập trình ASP.NET
1
N i dung trình bày 2
1. 2. 3. 4.
HTML server controls Web server controls Validation server controls Web User Controls
1
04/13/2010
Server controls
3
Là những control mà Web server (IIS) có thể “hiểu được” Mỗi server control bao gồm Tập các thuộc tính (Properties) Các sự kiện (Events) Các phương thức xử lý sự kiện (Methods)
Dùng để thể hiện giao diện web
1. Html Server Controls 4
Là những tag HTML được bổ sung thuộc tính runat=“server” Có thể lập trình gắn kết xử lý sự kiện, truy xuất thuộc tính của HTML Server Controls onserverchange="Text1_ServerChange" />
Có thể tiến hành get hoặc set giá trị các properties của server control tại thời điểm runtime. Demo ?
Các Control trong ASP.NET
10
5
04/13/2010
a.Label control 11
Hiển thị nội dụng của static text Được render thành HTML <span> element. Mục đích sử dụng: Thể hiện nơi dụng thông báo (lỗi, kết quả) sau khi xảy ra một sự kiện hay sau quá trình postback.
Label demo 12
Sử dụng ToolTip in Label Thay đổi Label sử dụng Programmatically
6
04/13/2010
b. Literal control 13
Hiển thị static text, nhưng không kèm theo bất kỳ HTML element nào hết.
c.Textbox control 14
Cho phép thể hiện một dòng hay nhiều dòng text Sự kiện căn bản: TextChange Demo Sử dụng OnTextChange event (xảy ra postback- ý nghĩa ???) Thay đổi Textbox font, text style Chế độ ReadOnly SingleLine Mode, Password mode …
7
04/13/2010
d. Button Control 15
Gồm 3 loại chính: Button LinkButton ImageButton
Tất cả các button control đều tiến hành postback về
server khi xảy ra sự kiện click Demo Button programmatically Button visible LinkButton …
Button Event 16
Có thể chọn kích hoạt một trong hai hàm xử lý sự kiện chính khi thực hiện click vào Button Click: sử dụng cho từng button Command: sử dụng khi nhiều button cùng loại share chung một hàm xử lý sự kiện
Demo CommandEvent
8
04/13/2010
Button và client side event 17
ASP.NET cho phép tất cả các control có thể xử lý các client-side event. Demo
ClientEvent
e. Checkbox control 18
Chọn lựa trạng thái True hoặc False Thuộc tính quan trọng: Checked Sự kiện quan trọng: CheckChanged Demo CheckChanged
9
04/13/2010
f. List control 19
Bao gồm: DropDownList, ListBox, CheckBoxList, BulletedList, RadioButtonList
Các thuộc tính quan trong: Items, SelectedIndex, SelectedItem, SelectedValue Sự kiện quan trọng: SelectedIndexChanged. Demo ListDemo
Mơ hình list control
10
04/13/2010
g. M t s control còn l i 21
Hyperlink control HyperlinkDemo
Table control TableDemo
Calendar control CalendarDemo CalendarSelect CalendarRender
3. Validation server control 22
Khái niệm Input Validation ASP.NET Validation Controls
11
04/13/2010
Khái ni m Input Validation 23
Kiểm tra một giá trị cần nhập liệu vào một control
Validation controls Validation control kiểm tra tính đúng đắn của dữ liệu do client nhập vào trước khi trang được gửi về cho server Validation control
Sử dụng khi
RequiredFieldValidator
Kiểm tra nếu dữ liệu trong control khác giá trị cho trước (mặc định là rỗng)
CompareValidator
Kiểm tra nếu mục dữ liệu nhập trong control giống với control khác hoặc so sánh với một giá trị cụ thể
RangeValidator
Kiểm tra nếu mục dữ liệu nhập trong control nằm trong khoảng 2 giá trị
RegularExpressionValidator
Kiểm tra nếu mục dữ liệu nhập trong control thỏa 1 công thức định dạng chỉ định
CustomValidator
Kiểm tra tính đúng đắn của dữ liệu nhập vào control sử dụng client-side script hoặc a server-side code, hoặc cả 2
ValidationSummary
Hiển thị tất cả các lỗi kiểm tra xảy ra trong trang
12
04/13/2010
S d ng Validation Control Các bước: Kéo thả 1 validate control vào Web form Thiết lập các thuộc tính cho validate control: ControlToValidate là control bạn muốn kiểm tra ErrorMessage : Thông báo lỗi Text : Hiển thị của validate control
Sử dụng ValidationSummary control để hiển thị tất cả các lỗi xảy ra trong trang M c dù vi c ki m tra x y ra ki n post-back x y ra!
client, nhưng nó ch th c hi n khi có 1 s
25
Ví d Đ t thu c tính ErrorMessage cho Validate control
26
13
04/13/2010
Ví d S d ng ValidationSummary
27
Ví d S d ng ValidationSummary control v i ShowMessage=True
28
14
04/13/2010
Required Field Validator
Thuộc tính
Ý nghĩa
ControlToValidate
Control dùng để thực hiện kiểm tra
InitialValue
Giá trị dùng để so sánh. Mặc định là rỗng.
M u s : runat="server“></asp:TextBox> ControlToValidate="txtMauSo" InitialValue="0" Text=“Mau so phai khac 0" />
29
Compare Validator
Thuộc tính
Ý nghĩa
ControlToValidate
Control dùng để thực hiện kiểm tra
ControlToCompare
Control dùng để so sánh
Operator
Toán tử so sánh: Equal, GreaterThan, GreaterThanEqual, LessThan, LessThanEqual, NotEqual, hoặc DataTypeCheck
ValueToCompare
Giá trị hằng số để so sánh ControlToValidate với Operator
Type
Kiểm tra kiểu dữ liệu của ControlToValidate: String, Integer, Double, Date, Currency
30
15
04/13/2010
Ví d - Ki m tra M t kh u và Xác
nh n m t kh u
Enter Password: TextMode="password"></asp:TextBox> Reenter Password: TextMode="password"></asp:TextBox> ControlToValidate="txtPass2" Operator="Equal" ControlToCompare="txtPass1" Text="Passwords must match" />
31
Ví d - Ki m tra d li u là s nh hơn ho c b ng 18
Age: <asp:TextBox ID="txtAge" runat="server"></asp:TextBox> ControlToValidate="txtAge" ValueToCompare="18" Operator="LessThanEqual“ Type="Integer" Text="You are too old to view this site" />
Kiểm tra kiểu dữ liệu của ControlToValidate: String, Integer, Double, Date, Currency
Enter a number between 1 and 20:
<asp:TextBox ID="txtNumber" runat="server"></asp:TextBox> ControlToValidate="txtNumber" MinimumValue="1" MaximumValue="20" Type="Integer" Text="Please enter number between 1 and 20" /> 34
17
04/13/2010
Regular Expression Validator
Email runat="server"></asp:TextBox>
ControlToValidate=“txtEmail” ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([.]\w+)*“ ErrorMessage=“Enter a valid Email“ />
35
Regular Expression Validator Ký hi u
Ý nghĩa
^…$
Dấu hiệu bắt đầu và kết thúc một Expression
\t
Có chứa Ký tự Tab
\n
Có chứa Ký tự xuống dịng
.
Có chứa Ký tự bất kỳ khác \n
[qwerty]
Có chứa Ký tự bất kỳ trong ngoặc vuông
[^qwerty]
Không chứa ký tự nào trong ngoặc vng
[a-z]
Có chứa ký tự trong khoảng từ a đến z
\w
Có chứa một từ bất kỳ (word). Tương tự [a-zA-Z0-0]
\W
Có chứa một chuỗi bất kỳ khơng phải là một từ (nonword)
|
Hoặc 36
18
04/13/2010
Regular Expression Validator Ký hi u
Ý nghĩa
\s
Có chứa ký tự khoảng trắng
\S
Khơng chứa ký tự khoảng trắng
\d
Có chứa ký tự số
\D
Khơng phải ký tự số
*
Chỉ định 0 hoặc nhiều
+
Chỉ định 1 hoặc nhiều
?
Chỉ định 0 hoặc 1
{n}
Chỉ định có đúng chính xác n lần
{n,}
Chỉ định có nhiều hơn n lần
{n,m}
Chỉ định có từ n đến m lần
37
CustomValidator Tự viết mã lệnh kiểm tra chạy trên server hoặc client Trên Server Đặt mã lệnh kiểm tra trong hàm xử lý sự kiện ServerValidate
Hoặc Trên Client Chỉ định đoạn script kiểm tra cho thuộc ClientValidationFunction của CustomValidator
<script language="javascript"> function ClientValidate(e, args) { args.IsValid = false; if (args.Value == "abc") args.IsValid = true; } </script>
40
20
04/13/2010
Web User Controls Là các trang ASP.NET được sử dụng như là server control Có thể tự định nghĩa các thuộc tính & phương thức riêng Có khả năng tái sử dụng cho nhiều trang web asp.net Chỉ hoạt động khi được thêm vào một trang web asp.net File user-control có phần mở rộng là (*.ascx) Phải đăng ký trước khi sử dụng