× Giới thiệu Lịch khai giảng Tin tức Sản phẩm học viên

ASP.NET - Server Controls từ A- Z cho những lập trình viên mới

28/04/2022 08:30

Control là các khối xây dựng nhỏ của giao diện người dùng đồ họa, bao gồm hộp văn bản, nút, hộp kiểm, hộp danh sách, nhãn và nhiều công cụ khác. Sử dụng các công cụ này, người dùng có thể nhập dữ liệu, lựa chọn và chỉ ra sở thích của họ. Các Control cũng được sử dụng cho các công việc cấu trúc, như xác thực, truy cập dữ liệu, bảo mật, tạo trang chính và thao tác dữ liệu.

Control là các khối xây dựng nhỏ của giao diện người dùng đồ họa, bao gồm hộp văn bản, nút, hộp kiểm, hộp danh sách, nhãn và nhiều công cụ khác. Sử dụng các công cụ này, người dùng có thể nhập dữ liệu, lựa chọn và chỉ ra sở thích của họ.

Các Control cũng được sử dụng cho các công việc cấu trúc, như xác thực, truy cập dữ liệu, bảo mật, tạo trang chính và thao tác dữ liệu.

ASP.NET sử dụng năm loại Control web, đó là:

  • Control HTML
  • Control Máy chủ HTML
  • Control máy chủ ASP.NET
  • Các Control ASP.NET Ajax Server
  • Kiểm soát người dùng và kiểm soát tùy chỉnh

Các Control máy chủ ASP.NET là các Control chính được sử dụng trong ASP.NET. Các Control này có thể được nhóm thành các danh mục sau:

  • Kiểm soát xác thực - Chúng được sử dụng để xác thực đầu vào của người dùng và chúng hoạt động bằng cách chạy tập lệnh phía máy khách.
  • Kiểm soát nguồn dữ liệu - Các kiểm soát này cung cấp liên kết dữ liệu với các nguồn dữ liệu khác nhau.
  • Control chế độ xem dữ liệu - Đây là các danh sách và bảng khác nhau, có thể liên kết với dữ liệu từ các nguồn dữ liệu để hiển thị.
  • Kiểm soát cá nhân hóa - Những kiểm soát này được sử dụng để cá nhân hóa một trang theo sở thích của người dùng, dựa trên thông tin của người dùng.
  • Kiểm soát đăng nhập và bảo mật - Các kiểm soát này cung cấp xác thực người dùng.
  • Trang chính - Các Control này cung cấp bố cục và giao diện nhất quán trong toàn bộ ứng dụng.
  • Control điều hướng - Những Control này giúp điều hướng. Ví dụ: menu, chế độ xem dạng cây, v.v.
  • Các Control phong phú - Các Control này triển khai các tính năng đặc biệt. Ví dụ, kiểm soát AdRotator, FileUpload và Lịch.

Cú pháp để sử dụng các Control máy chủ là:

<asp:controlType  ID ="ControlID" runat="server" Property1=value1  [Property2=value2] />

Ngoài ra, visual studio có các tính năng sau để giúp sản xuất mã hóa không có lỗi:

  • Kéo và thả các Control trong chế độ xem thiết kế
  • Tính năng IntelliSense hiển thị và tự động hoàn thành các thuộc tính
  • Cửa sổ thuộc tính để đặt trực tiếp các giá trị thuộc tính

>>> Đọc thêm: ASP.NET - SERVER SIDE VÀ CÁC THÔNG TIN HỮU ÍCH

Thuộc tính của Control máy chủ

Các Control máy chủ ASP.NET với khía cạnh trực quan được bắt nguồn từ lớp WebControl và kế thừa tất cả các thuộc tính, sự kiện và phương thức của lớp này.

Bản thân lớp WebControl và một số Control máy chủ khác không được hiển thị trực quan có nguồn gốc từ lớp System.Web.UI.Control. Ví dụ: Control PlaceHolder hoặc Control XML.

Các Control máy chủ ASP.Net kế thừa tất cả các thuộc tính, sự kiện và phương thức của lớp WebControl và System.Web.UI.Control.

Bảng sau đây hiển thị các thuộc tính kế thừa, chung cho tất cả các Control máy chủ:

Bất động sản

Sự miêu tả

Khóa truy cập

Nhấn phím này bằng phím Alt sẽ di chuyển tiêu điểm đến Control.

Thuộc tính

Nó là tập hợp các thuộc tính tùy ý (chỉ để hiển thị) không tương ứng với các thuộc tính trên Control.

Màu nền

Màu nền.

BindingContainer

Control có chứa liên kết dữ liệu của Control này.

BorderColor

Màu viền.

Kiểu viền

Kiểu viền.

Chiều rộng biên giới

Chiều rộng biên giới.

Gây ra xác nhận

Cho biết nếu nó gây ra xác thực.

ChildControlCreate

Nó cho biết liệu các Control con của Control máy chủ đã được tạo hay chưa.

ClientID

ID kiểm soát cho đánh dấu HTML.

Bối cảnh

Đối tượng HttpContext được liên kết với Control máy chủ.

Kiểm soát

Tập hợp tất cả các kiểm soát có trong kiểm soát.

ControlStyle

Kiểu Control máy chủ Web.

CssClass

Lớp CSS

DataItemContainer

Nhận tham chiếu đến vùng chứa đặt tên nếu vùng chứa đặt tên triển khai IDataItemContainer.

DataKeysContainer

Nhận tham chiếu đến vùng chứa đặt tên nếu vùng chứa đặt tên triển khai IDataKeysControl.

DesignMode

Nó cho biết liệu Control có đang được sử dụng trên bề mặt thiết kế hay không.

DisabledCssClass

Nhận hoặc đặt lớp CSS để áp dụng cho phần tử HTML được hiển thị khi Control bị tắt.

Đã bật

Cho biết Control có bị chuyển sang màu xám hay không.

EnableTheming

Cho biết liệu chúng có áp dụng cho kiểm soát hay không.

EnableViewState

Cho biết trạng thái xem của Control có được duy trì hay không.

Sự kiện

Nhận danh sách các đại biểu của trình xử lý sự kiện cho Control.

Nét chữ

Nét chữ.

Màu nước ngoài

Màu nền.

HasAttributes

Cho biết liệu Control có đặt thuộc tính hay không.

HasChildViewState

Cho biết liệu các Control con của Control máy chủ hiện tại có bất kỳ cài đặt trạng thái chế độ xem đã lưu nào hay không.

Chiều cao

Chiều cao tính bằng pixel hoặc%.

TÔI

Định danh cho Control.

IsChildControlStateCleared

Cho biết liệu các Control có trong Control này có trạng thái Control hay không.

Được kích hoạt

Nhận một giá trị cho biết Control có được bật hay không.

IsTrackingViewState

Nó cho biết liệu Control máy chủ có đang lưu các thay đổi đối với trạng thái xem của nó hay không.

IsViewStateEnabled

Nó cho biết trạng thái xem có được bật cho Control này hay không.

LoadViewStateById

Nó cho biết liệu Control có tham gia tải trạng thái xem của nó bằng ID thay vì chỉ mục hay không.

Trang

Trang chứa Control.

Cha mẹ

Kiểm soát của phụ huynh.

RenderingCompatibility

Nó chỉ định phiên bản ASP.NET mà HTML được hiển thị sẽ tương thích với.

Địa điểm

Vùng chứa lưu trữ Control hiện tại khi được hiển thị trên bề mặt thiết kế.

SkinID

Nhận hoặc thiết lập da để áp dụng cho Control.

Phong cách

Nhận tập hợp các thuộc tính văn bản sẽ được hiển thị dưới dạng thuộc tính kiểu trên thẻ bên ngoài của Control máy chủ Web.

TabIndex

Nhận hoặc đặt chỉ mục tab của Control máy chủ Web.

TagKey

Nhận giá trị HtmlTextWriterTag tương ứng với Control máy chủ Web này.

TagName

Lấy tên của thẻ Control.

TemplateControl

Mẫu có chứa Control này.

TemplateSourceDirectory

Nhận thư mục ảo của trang hoặc Control có chứa Control này.

Mẹo công cụ

Nhận hoặc đặt văn bản được hiển thị khi con trỏ chuột di chuột qua Control máy chủ web.

UniqueID

Định danh duy nhất.

ViewState

Nhận từ điển thông tin trạng thái giúp lưu và khôi phục trạng thái xem của Control máy chủ trên nhiều yêu cầu cho cùng một trang.

ViewStateIgnoreCase

Nó cho biết liệu đối tượng StateBag có phân biệt chữ hoa chữ thường hay không.

ViewStateMode

Nhận hoặc đặt chế độ trạng thái xem của Control này.

Có thể nhìn thấy

Nó cho biết liệu một Control máy chủ có hiển thị hay không.

Chiều rộng

Nhận hoặc đặt chiều rộng của Control máy chủ Web.

Phương pháp kiểm soát máy chủ

Bảng sau cung cấp các phương pháp của Control máy chủ:

Phương pháp

Sự miêu tả

AddAttributesToRender

Thêm các thuộc tính và kiểu HTML cần được hiển thị cho HtmlTextWriterTag được chỉ định.

Đã thêm Kiểm soát

Được gọi sau khi một Control con được thêm vào bộ sưu tập Control của đối tượng Control.

AddParsedSubObject

Thông báo cho Control máy chủ rằng một phần tử, XML hoặc HTML, đã được phân tích cú pháp và thêm phần tử vào bộ sưu tập Control của Control máy chủ.

ApplyStyleSheetSkin

Áp dụng các thuộc tính kiểu được xác định trong biểu định kiểu trang cho Control.

ClearCachedClientID

Cơ sở hạ tầng. Đặt giá trị ClientID đã lưu trong bộ nhớ cache thành null.

ClearChildControlState

Xóa thông tin trạng thái Control cho các Control con của Control máy chủ.

ClearChildState

Xóa thông tin trạng thái xem và trạng thái Control cho tất cả các Control con của Control máy chủ.

ClearChildViewState

Xóa thông tin trạng thái xem cho tất cả các Control con của Control máy chủ.

CreateChildControls

Được sử dụng để tạo Control con.

CreateControlCollection

Tạo một đối tượng ControlCollection mới để giữ các Control con.

CreateControlStyle

Tạo đối tượng kiểu được sử dụng để triển khai tất cả các thuộc tính liên quan đến kiểu.

Kết nối dữ liệu

Liên kết nguồn dữ liệu với Control máy chủ và tất cả các Control con của nó.

DataBind (Boolean)

Liên kết một nguồn dữ liệu với Control máy chủ và tất cả các Control con của nó với một tùy chọn để nâng cao sự kiện DataBinding.

DataBindChildren

Liên kết nguồn dữ liệu với các Control con của Control máy chủ.

Vứt bỏ

Cho phép Control máy chủ thực hiện dọn dẹp lần cuối trước khi giải phóng khỏi bộ nhớ.

EnsureChildControls

Xác định xem Control máy chủ có chứa Control con hay không. Nếu không, nó sẽ tạo ra các Control con.

EnsureID

Tạo số nhận dạng cho các kiểm soát không có số nhận dạng.

Bằng (Đối tượng)

Xác định xem đối tượng được chỉ định có bằng đối tượng hiện tại hay không.

Hoàn thiện

Cho phép một đối tượng cố gắng giải phóng tài nguyên và thực hiện các hoạt động dọn dẹp khác trước khi đối tượng được thu hồi bằng cách thu gom rác.

FindControl (Chuỗi)

Tìm kiếm vùng chứa đặt tên hiện tại cho một Control máy chủ với tham số id được chỉ định.

FindControl (Chuỗi, Int32)

Tìm kiếm vùng chứa đặt tên hiện tại cho một Control máy chủ với id đã chỉ định và một số nguyên.

Tập trung

Đặt tiêu điểm đầu vào thành một Control.

GetDesignModeState

Nhận dữ liệu thời gian thiết kế cho một Control.

GetType

Rút ra loại của trường hợp hiện tại.

GetUniqueIDRelativeTo

Trả về phần có tiền tố của thuộc tính UniqueID của Control được chỉ định.

HasControls

Xác định xem Control máy chủ có chứa bất kỳ Control con nào không.

HasEvents

Cho biết liệu các sự kiện có được đăng ký cho kiểm soát hay bất kỳ kiểm soát con nào hay không.

IsLiteralContent

Xác định Control máy chủ chỉ chứa nội dung chữ.

LoadControlState

Khôi phục thông tin trạng thái Control.

LoadViewState

Khôi phục thông tin trạng thái xem.

MapPathSecure

Truy xuất đường dẫn vật lý mà đường dẫn ảo, tuyệt đối hoặc tương đối, ánh xạ tới.

MemberwiseClone

Tạo một bản sao nông của đối tượng hiện tại.

MergeStyle

Sao chép bất kỳ phần tử không trống nào của kiểu được chỉ định vào Control web, nhưng không ghi đè bất kỳ phần tử kiểu hiện có nào của Control.

OnBubbleEvent

Xác định xem sự kiện kiểm soát máy chủ có được chuyển lên hệ thống phân cấp kiểm soát máy chủ giao diện người dùng của trang hay không.

OnDataBinding

Tăng sự kiện ràng buộc dữ liệu.

OnInit

Tăng sự kiện Init.

Đang tải

Tăng sự kiện Tải.

OnPreRender

Tăng sự kiện PreRender.

OnUnload

Nâng cao sự kiện Dỡ.

OpenFile

Nhận Luồng được sử dụng để đọc tệp.

Đã xóa

Được gọi sau khi Control con bị xóa khỏi bộ sưu tập Control của đối tượng Control.

Kết xuất

Kết xuất Control cho trình viết HTML được chỉ định.

RenderBeginTag

Hiển thị thẻ mở HTML của Control cho người viết được chỉ định.

RenderChildren

Xuất nội dung của phần tử con của Control máy chủ tới đối tượng HtmlTextWriter được cung cấp, đối tượng này ghi nội dung sẽ được hiển thị trên máy khách.

RenderContents

Hiển thị nội dung của Control cho người viết đã chỉ định.

RenderControl (HtmlTextWriter)

Xuất nội dung Control của máy chủ tới đối tượng HtmlTextWriter được cung cấp và lưu trữ thông tin theo dõi về Control nếu tính năng theo dõi được bật.

RenderEndTag

Kết xuất thẻ đóng HTML của Control vào trình ghi được chỉ định.

ResolveAdapter

Nhận bộ chuyển đổi Control chịu trách nhiệm hiển thị Control được chỉ định.

SaveControlState

Lưu mọi thay đổi trạng thái kiểm soát máy chủ đã xảy ra kể từ thời điểm trang được đăng trở lại máy chủ.

SaveViewState

Lưu bất kỳ trạng thái nào đã được sửa đổi sau khi phương thức TrackViewState được gọi.

SetDesignModeState

Đặt dữ liệu thời gian thiết kế cho một Control.

ToString

Trả về một chuỗi đại diện cho các đối tượng hiện tại.

TrackViewState

Làm cho Control theo dõi các thay đổi đối với trạng thái dạng xem của nó để chúng có thể được lưu trữ trong thuộc tính trạng thái dạng xem của đối tượng.

Ví dụ

Hãy để chúng tôi xem xét một Control máy chủ cụ thể - Control chế độ xem dạng cây. Control Chế độ xem dạng cây nằm dưới các Control điều hướng. Các Control Điều hướng khác là: Control Menu và Control SiteMapPath.

Thêm Control chế độ xem dạng cây trên trang. Chọn Chỉnh sửa nút ... từ các tác vụ. Chỉnh sửa từng nút bằng trình chỉnh sửa nút Chế độ xem dạng cây như được hiển thị:

Khi bạn đã tạo xong các nút, nó trông giống như sau trong dạng xem thiết kế:

Tác vụ AutoFormat ... cho phép bạn định dạng chế độ xem dạng cây như được hiển thị:

Thêm Control nhãn và Control hộp văn bản trên trang và đặt tên chúng tương ứng là lblmessage và txtmessage.

Viết một vài dòng mã để đảm bảo rằng khi một nút cụ thể được chọn, Control nhãn sẽ hiển thị văn bản nút và hộp văn bản hiển thị tất cả các nút con bên dưới nó, nếu có. Mã đằng sau tệp sẽ giống như sau:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;




using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;




using System.Xml.Linq;

 

namespace eventdemo {

   public partial class treeviewdemo : System.Web.UI.Page {

   

      protected void Page_Load(object sender, EventArgs e) { 

         txtmessage.Text = " "; 

      }

      

      protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e) {

      

         txtmessage.Text = " "; 

         lblmessage.Text = "Selected node changed to: " + TreeView1.SelectedNode.Text;

         TreeNodeCollection childnodes = TreeView1.SelectedNode.ChildNodes;

         

         if(childnodes != null) {

            txtmessage.Text = " ";

            

            foreach (TreeNode t in childnodes) {

               txtmessage.Text += t.Value;

            }

         }

      }

   }

}

>>> Tham khảo khóa học lập trình tại T3h ngay hôm nay!