Bài 2 Server Controls trong Asp.net


Sử dụng thành thạo các điều khiển: HTML Server Controls, Web Server Controls, Specialized Controls.Các sự kiện cơ bản trên trang .aspx. Làm việc với đối tượng ViewState


Mục tiêu

  • Sử dụng thành thạo các điều khiển:
    • HTML Server Controls
    • Web Server Controls
    • Specialized Controls
  • Các sự kiện cơ bản trên trang .aspx
  • Làm việc với đối tượng ViewState

Nội dung

  1. Tổng quan về ASP.Net Server Controls
  2. Đối tượng Asp.Net Page
  3. HTML Server Controls
  4. Web Server Controls
  5. Các điều khiển khác
  6. Đối tượng ViewState

1. Tổng quan về ASP.NET Server Controls

  • Giới thiệu các nhóm điểu khiển trên thanh Toolbox
  • Các kiểu Server Control
    • HTML Server Controls
    • Web Server Controls
  • Khi nào sử dụng HTML Server Control
    • Điều khiển cần phải có đoạn JavaScript kèm theo sự kiện
    • Có nhiều code JavaScript tham chiếu đến điều khiển đó
  • Khi nào sử dụng Web Server Control
    • Không rơi vào các trường hợp trên

2. Đối tượng Asp.Net Page

  • Sự kiện
    • Trình tự các sự kiện xảy ra khi render một trang web (Page Life-Cycle Events)

Page Life-Cycle Events asp.net

  • Thuộc tính
    • IsPostBack (True/False): trả về trạng thái của trang web, cho biết được load lần đầu tiên hay không
    • MaintainScrollPositionOnPostBack (True/False): có giữ nguyên vị trí mà người dùng đang đọc sau khi PostBack không

3. HTML Server Controls

  • HTML Controls
    • Được tạo ra từ tag HTML tĩnh
    • Thường được sử dụng lập trình ở phía client
    • Thuộc tên miền System.Web.UI.HtmlControlsols
  • HTML Server Controls
    • Sử dụng HTML Controls trong quá trình lập trình ở phía server, ta thực hiện như sau:
      • Bổ sung thuộc tính runat=“server” vào tag điều khiển
      • Hoặc chọn chức năng Run As Server Control từ thực đơn ngữ cảnh
    • Điểu khiển có thuộc tính runat=“server” gọi là HTML Server Controls

4. Web Server Controls

  • Giới thiệu
    • Web Server Controls là các đối tượng của .Net Framework
    • Được chuyển đổi sang dạng HTML tĩnh lúc thực thi
    • Thường được sử dụng lập trình ở phía server Thuộc tên miền System.Web.UI.WebControls
    • HTML Source lúc thiết kế có dạng: <asp:textbox attributes runat="server" />
  • Label
    • Dùng để hiển thị thông tin
    • Thuộc tính Text có thể nhận và hiển thị nội dung với các tag HTML.
  • HyperLink
    • Dùng để tạo ra các liên kết siêu văn bản
    • ImageURL: hình ảnh hiển thị trên điều khiển (ưu tiên)
    • Text: chuỗi văn bản hiển thị trên điều khiển.
    • NavigateUrl: đường dẫn cần liên kết đến
    • Target(_blank, _self, _parent): dạng cửa sổ hiển thị trang kết quả
  • TextBox
    • TextBox Dùng để nhập và hiển thị dữ liệu
    • Text: nội dung chứa trong
    • TextBox TextMode (SingleLine,MultiLine,Password ): định dạng hiển thị của Textbox.
    • Wrap: có được phép tự động xuống dòng hay không
  • Image
    • Dùng để hiển thị hình ảnh
    • ImageURL: đường dẫn đến tập tin hình ảnh cần hiển thị.
    • AlternateText: chuỗi văn bản sẽ hiển thị khi đường dẫn của thuộc tính ImageURL không tồn tại.
  • Button, ImageButton, LinkButton
    • Sẽ PostBack về server khi được chọn
    • CausesValidation(True/False): có kiểm tra tính hợp lệ trên trang web không
    • OnClientClick: ngôn ngữ Client-side script sẽ được thi hành ở mức client
  • CheckBox, RadioButton
    • CheckBox và RadioButton Checked: cho biết trạng thái của điều khiển có được chọn hay không
    • TextAlign: qui định vị trí hiển thị của điều khiển so với chuỗi văn bản
    • GroupName: nhóm các điều khiển thành một nhóm, dành cho RadioButton

5. Các điều khiển khác

  • Panel và PlaceHolder
    • Được sử dụng để chứa các điều khiển khác
    • Điều khiển Panel cho phép đặt những điều khiển khác vào bên trong lúc thiết kế còn PlaceHolder thì không
    • Xử lý thêm điều khiển khác vào lúc thực thi: TextBox txtSo_A = new TextBox(); <Điều khiển Panel | Placeholder>.Controls.Add(txtSo_A);
  • Table
    • Table Dùng để thao tác, thể hiện dữ liệu dưới dạng bảng
    • Bao gồm tập hợp các dòng - TableRow (thông qua thuộc tính Rows), mỗi dòng được tạo thành từ tập hợp các ô - TableCell (thông qua thuộc tính Cells)
    • Mỗi ô trong Table có thể chứa các điều khiển khác
  • Calendar
    • Dùng để thể hiện lịch trong tháng
    • Sự kiện:
      • SelectionChanged: khi thay đổi ngày khác
      • VisbleMonthChanged: khi thay đổi tháng khác
      • DayRender: khi các ngày được tạo ra
  • FileUpLoad
    • Dùng để upload tập tin về server
    • Thuộc tính:
      • HashFile (True/False): điều khiển có khai báo tập tin chưa
      • FileName: trả về tên tập tin được upload
    • Phương thức: SaveAs: upload tập tin lên Server
  • View, MultiView
    • MultiView và View Là control container, dùng để chứa các điều khiển khác
    • MultiView gồm có nhiều View
    • Thuộc tính: ActiveViewIndex: chỉ số của view hiện hành
    • Phương thức: SetActiveView: thay đổi view hiện hành

6. Đối tượng ViewState

  • Giới thiệu
    • Dùng để lưu lại những thông tin của trang web sau khi Web Server gởi kết quả về cho client => Quản lý tình trạng ở mức client
    • Thuộc tính EnableViewState của trang web cho phép sử dụng đối tượng này hay không (True/False)
  • Sử dụng:
    • Gán giá trị cho ViewState: ViewState["Tên trạng thái"] = <Giá trị>;
    • Nhận giá trị: <Biến> = ViewState["Tên trạng thái"];
    • Lưu ý: "Tên trạng thái" có phân biệt chữ HOA/thường

Bài viết tiếp theo

Chia sẽ bài viết :