Bài giảng Thiết kế và lập trình Web 2 - Làm việc với Control
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Thiết kế và lập trình Web 2 - Làm việc với Control", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_thiet_ke_va_lap_trinh_web_2_lam_viec_voi_control.pdf
Nội dung text: Bài giảng Thiết kế và lập trình Web 2 - Làm việc với Control
- Bài giảng môn học LLÀÀMM VIVIỆỆCC VVỚỚII CONTROLCONTROL Khoa Công nghệ thông tin Trường ĐạihọcKhoahọcTự nhiên ThiThiếếtt kkếế && LLậậpp trtrììnhnh WEBWEB 22
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Nội dung Server Control ASP.NET Server control vs HTML control Simple control – Label, Button (Button, LinkButton, ImageButton), TextBox – List Control (ListBox, DropDownList, Table,DataGrid, DataList, Repeater ) Validation control Mộtsố control khác © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Nội dung Server Control ASP.NET Server control vs HTML control Simple control – Label, Button (Button, LinkButton, ImageButton), TextBox – List Control (ListBox, DropDownList, Table,DataGrid, DataList, Repeater ) Validation control Mộtsố control khác © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Server Control Server control là những control mà Web server (IIS) có thể “hiểu được”. Các loại server control – HTML Server Control – ASP.NET Server Control Dùng để thể hiệngiaodiệnweb © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control HTML Server Control HTML Server control là những tag HTML tạora Duy trì tương thích với các tag HTML cũ. Thêm vào thuộc tính run at = “server” Tấtcả HTML Server Control phải được đặt trong tag vớithuộc tính run at = “server” © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control ASP.NET Server Control ASP.NET Server Control là những tag đặcbiệtcủa riêng ASP.NET. Các control này cũng sẽđượcxử lý trên server, và đòi hỏiphảicóthuộc tính runat = “server” Không tương ứng với HTML tag nào. Có thể dùng thể hiệncácthànhphầnphứctạp. © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Nội dung Server Control ASP.NET Server control vs HTML control Simple control – Label, Button (Button, LinkButton, ImageButton), TextBox – List Control (ListBox, DropDownList, Table,DataGrid, DataList, Repeater ) Validation control Mộtsố control khác © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control ASP.NET Server control vs HTML control Tính năng ASP.NET Server control HTML control Chỉ có thể kích hoạtcácsự Kích hoạt đượcmộtsố sự kiệncụ thể Server event kiệnmức trang trên server trên Server (post-back) Dữ liệu không đượclưugiữ lại, Quảnlýtrạng Dữ liệunhập vào control đượclưugiữ phảitự lưuvàđiềnvàosử thái lạisaumỗi request dụng script Tự động nhậndiệnloại trình duyệtvà Không tự động nhậndiệntrình Tương thích tạohiểnthị cho phù hợp duyệt .NET Framework cung cấpmộttập Các thuộc các thuộctínhchomỗi control, cho Chỉ có các thuộctínhchuẩn tính phép thay đổiphầnhiểnthị và hành vi củaHTML thông qua mã lệnh © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Tạisaosử dụng HTML control ??? Sử dụng HTML control khi: Nâng cấp từ ASP Không phảitấtcả các control đềucầncácsự kiện server-side hoặcquảnlýtrạng thái © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Khác biệt trong HTML tag Server control: – HTML control: – HTML tag Ví dụ: – – – – © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Server Control & HTML Control Server control HTML control Hiểnthị Label, Text Field, Text Area, Label, TextBox, Literal Text Password Field Hiểnthị Table, DataGrid Table Table DropDownList, ListBox, DataList, List List Box, Dropdown Repeater Thựchiện Button, Reset Button, Submit Button, LinkButton, ImageButton lệnh Button CheckBox, CheckBoxList, RadioButton, Đặtgiá trị Checkbox, Radio Button RadioButtonList Hiểnthị Image, ImageButton Image Image Liên kết Hyperlink Anchor © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Server Control & HTML Control Flow Layout, Group control Panel, Placeholder Grid Layout Ngàytháng Calendar none Quảng cáo AdRotator none Đường kẻ none Horizontal Rule Lấy tên file từ none File Field client Lưudữ liệutrên (sử dụng quảnlýtrạng thái) Input Hidden trang Kiểmtratính RequiredFieldValidator, CompareValidator, none (sử dụng đúng đắncủa RangeValidator, RegularExpressionValidator, client script) dữ liệunhập CustomValidator,ValidationSummary © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Nội dung Server Control ASP.NET Server control vs HTML control Simple control – Label, Button (Button, LinkButton, ImageButton), TextBox – List Control (ListBox, DropDownList, Table,DataGrid, DataList, Repeater ) Validation control Mộtsố control khác © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Simple control Label, Buttons, TextBox - HTML tag Label – Please input text Buttons (Button, LinkButton, ImageButton) – – LinkButton – TextBox – © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Simple control Chỉnh sửaThuộc tính lúc Thiếtkế Button Image Button Link Button © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Simple control Mộtsố thuộc tính quan trọng Label, Buttons – ThuộctínhText TextBox Thuộctính Sử dụng đề Text Lấy/Đặtdữ liệu choTextBox. TextMode SingleLine, MultiLine (scrollable), Hoặc Password. Enabled Enable/Disable TextBox Visible Show/Hide TextBox ReadOnly Ngăn không cho ngườidùng thay đổidữ liệu trong TextBox. Khi đượcthiếtlậplà True, mỗi khi ngườidùng thay đổidữ liệu AutoPostBack TextChanged trong TextBox sẽ kích hoạtsự kiện post-back về server © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control List Control ListBox, DropDownList, Table Control Sử dụng khi Hiểnthị danh sách dữ liệu read-only đơngiản, sử dụng ListBox scroll Hiểnthị danh sách dữ liệu read-only đơngiản, sử dụng cửa DropDownList sổ sổ xuống Hiểnthị thông tin dướidạng dòng và cột. Table control Table cho phépxâydựng cácbảng động bằng mã lệnh sử dụng cácthuộctính tậphợpTableRowsvà TableCells © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control List Control: HTML tag ListBox – DropDownList – Table – © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control List Controls Chỉnh sửaThuộc tính lúc Thiếtkế © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control List Control Thêm các mụcdữ liệuvàothời điểmchạy ứng dụng ListBox và DropDownList: – Sử dụng phương thức Add và danh sách Items của control – Ví dụ: protected void btnShow_Click(object sender, EventArgs e) { ListBox1.Items.Add(txtSource.Text); DropDownList1.Items.Add(txtSource.Text); } © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control List Control Lấymụcdữ liệu đượcchọn Dùng thuộc tính SelectedItem để lấymụcdữ liệu đượcchọn hiệntại trong List protected void Page_Load(object sender, EventArgs e) { // Test if there is a selected item. if (ListBox1.SelectedItem == null) // Display the selected item. Label1.Text = "The selected item is: " + ListBox1.SelectedItem.Text; else Label1.Text = "No item is selected.“; } } © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Nội dung Server Control ASP.NET Server control vs HTML control Simple control – Label, Button (Button, LinkButton, ImageButton), TextBox – List Control (ListBox, DropDownList, Table,DataGrid, DataList, Repeater ) Validation control Mộtsố control khác © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Validation control Validation control kiểmtratínhđúng đắncủadữ liệudo client nhậpvàotrướckhitrangđượcgửivề cho server Validation control Sử dụng khi RequiredFieldValidator Kiểmtranếudữ liệu trong control khácrỗng Kiểmtranếumụcdữ liệunhập trong control giống CompareValidator với control khác Kiểmtranếumụcdữ liệunhập trong control nằm RangeValidator trong khoảng 2 giá trị Kiểmtranếumụcdữ liệunhập trong control thỏa1 RegularExpressionValidator công thức định dạng chỉđịnh Kiểmtratính đúng đắncủadữ liệunhậpvào control CustomValidator sử dụng client-side script hoặc a server-side code, hoặccả 2 ValidationSummary Hiểnthị tấtcả cáclỗikiểmtraxảy ra trong trang © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Sử dụng Validation Control Các bước: – Kéo thả 1 validate control vào Web form – Thiếtlậpcácthuộc tính cho validate control: • ControlToValidate là control bạnmuốnkiểmtra • ErrorMessage : Thông báo lỗi • Text : Hiểnthị của validate control – Sử dụng ValidationSummary control để hiềnthị tấtcả các lỗixảy ra trong trang Mặcdùviệckiểmtraxảyraở client, nhưng nó chỉ thựchiện khi có 1 sự kiện post-back xảyra! © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Ví dụ •Đặtthuộc tính ErrorMessage cho Validate control •Sử •Sdụngử d ValidationSummaryụng ValidationSummary control với ShowMessage=True © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Hủybỏ việcKiểmtra Để cho người dùng tự hủybỏ việckiểmtranếumuốn Các bước: – Tạomột HTML Button control • Hủysự kiện validation: onclick="Page_ValidationActive=false; • Và gửi trang về cho server – Kiểmtralạidữ liệu ở trên server • Kiểmtrathuộc tính Page.IsValid trong hàm xử lý sự kiện Page_Load © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Page.IsValid Thuộc tính Page.IsValid kiểm tra xem các form đã thỏa các Validation Control hay không. Trả về true nếutấtcảđều được test thành công Trả về false, trong trường hợpngượclại. protected void Page_Load(object sender, EventArgs e) { // Validate in case user cancelled validation. if (Page.IsPostBack == true) // Check if page is valid Page.Validate(); else // User cancelled operation, return home Response.Redirect("default.aspx"); } © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control CustomValidator Sử dụng CustomValidator control Tự viếtmãlệnh kiểmtrachạy trên server hoặc client Trên Server – Đặtmã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ểmtrachothuộc tính ClientValidationFunction của CustomValidator © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Ví dụ: Tự Kiểm tra trên Server protected void MyValidate(object source, ServerValidateEventArgs args) { args.IsValid = false; if (TextBox1.Text == "abc") args.IsValid = true; } © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Ví dụ: Tự kiểm tra trên Client function ClientValidate(e, args) { args.IsValid = false; if (args.Value == "abc") args.IsValid = true; } © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Nội dung Server Control ASP.NET Server control vs HTML control Simple control – Label, Button (Button, LinkButton, ImageButton), TextBox – List Control (ListBox, DropDownList, Table,DataGrid, DataList, Repeater ) Validation control Mộtsố control khác © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Mộtsố control khác Lấyvàthiếtlậpgiátrị – RadioButton, RadioButtonList, CheckBox, CheckBoxList Gom nhóm – Panel Hiểnthị Hình ảnh và Quảng cáo – Background, Foreground, Image, AdRotator Lấy thông tin Ngày tháng – Calendar LấyTậptin từ Client – File Field HTML control © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Mộtsố control khác RadioButton, CheckBox HTML tag – – Sử dụng thuộc tính Checked để lấygiátrị thiếtlập protected void btnShow_Click(object sender, EventArgs e) { if (CheckBox1.Checked == True) Response.Write("Checkbox1 is CHECKED“); } • Tấtcả RadioButton phải có cùng một GroupName © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Mộtsố control khác Panel Kéo thả control Panel vào Web form. Kéo các control khác lên trên Panel để gom nhóm © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Mộtsố control khác Hình ảnh và Quảng cáo Hình nền – Sử dụng thuộc tính Background của Web form – Sử dụng thuộc tính BackImageUrl của Panel control Hình ảnh – Sử dụng Image control Button bằng hình ảnh – Sử dụng ImageButton control Quảng cáo – Sử dụng AdRotator control © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Mộtsố control khác Calendar Sử dụng Calendar control để lấy thông tin về Ngày tháng Để lấyhoặcthiếtlậpgiátrị ngày tháng trên Calendar control, sử dụng hàm xử lý sự kiện SelectionChanged và thuộc tính SelectedDate hoặc SelectedDates © 2007 Khoa CNTT – ĐH KHTN
- Thiếtkế & Lập trình WEB 2 – Làm việcvới Control Mộtsố control khác File Field HTML control Sử dụng File Field HTML control để upload file từ client lên server File Field HTML control = Text Field HTML control + Submit Button HTML control Nhấn vào Browse button sẽ hiểnthị cửasổ cho phép chọn đường dẫn đến các file muốn upload trên máy client © 2007 Khoa CNTT – ĐH KHTN