SỬ DỤNG LISTCONTROL

Một phần của tài liệu lập trình ứng dụng web với asp.net (Trang 47 - 51)

Trong chương này chúng ta sẽ nghiên cứu các điều khiển trình bày danh sách như DropDownList, RadioButtonList, CheckBoxList … Điểm chung cho tất cả các Control này gồm 3 thuộc tính chính. Chúng ta có thể đưa dữ liệu vào các Control này từ màn hình thiết kế giao diện hoặc bằng dòng lệnh (nếu bằng dòng lệnh dữ liệu đưa vào có thể là một mảng danh sách hoặc dữ liệu từ cơ sở dữ liệu).

Thuộc tính quan trọng:

 DataSource: Chỉ đến nguồn dữ liệu

 DataTextField: Trường dữ liệu được hiển thị

 DataValueField: Trường dữ liệu thiết lập giá trị.

 Items: Tập hợp các item trong danh sách

 SelectedItem: Lấy ra item được chọn trong danh sách

 SelectedIndex: Thứ tự của item được chọn

 SelectedValue: Giá trị của item được chọn

1. Điều khiển DropDownList

Cho phép hiển thị một danh sách các lựa chọn, người sử dụng chỉ chọn một lựa chọn một lần.

VD: Tạo DropDownList lựa chọn quyền sử dụng hệ thống

Bằng giao diện thiết kê

<asp:DropDownList ID="DDLSystemRight" runat="server"> <asp:ListItem Value="1">User</asp:ListItem> <asp:ListItem Value="2">Manager</asp:ListItem> <asp:ListItem Value="3">Administrator</asp:ListItem> </asp:DropDownList> Bằng dòng lệnh Code HTML

<asp:DropDownList ID="DDLSystemRight" runat="server" />

Code Behide

Private Sub LoadSystemRight() Dim arr(2) As String

arr(0) = "User" arr(1) = "Manager" arr(2) = "Administrator" For i = 0 To 2 DDLSystemRight.Items.Add(arr(i)) DDLSystemRight.Items.Item(i).Value = i + 1 Next End Sub  Từ cơ sở dữ liệu

Private Sub LoadSystemRight() Dim conn As SqlConnection

Dim strConn = "<Chuỗi kết nối đến Server>"

conn = New SqlConnection() conn.ConnectionString = strConn conn.Open()

Dim command As New SqlCommand()

command = conn.CreateCommand()

With command

.CommandType = CommandType.StoredProcedure|Text .CommandText = "<Lệnh|Thủ tục SQL>"

' Nếu là thủ tục thì có thêm dịng lệnh sau

.Parameters.Add("@<Biến>", SqlDbType.<Type>, [Size]) .Parameters("@<Biến>").Value = "<Input value>"

End With

Dim da As New SqlDataAdapter(command) Dim ds As New DataSet

da.Fill(ds, "<Table Name>")

DDLSystemRight.DataSource = ds.Tables("<Table Name>") DDLSystemRight.DataBind() (adsbygoogle = window.adsbygoogle || []).push({});

DDLSystemRight.DataTextField = "SystemRightName" DDLSystemRight.DataValueField = "SystemRightID"

End Sub

Sự kiện SelectedIndexChanged: Xảy ra khi người dùng thay đổi lựa chọn phần tử của DropDownList.

Ghi chú: Để sử dụng được sự kiện này, ta phải khai báo thêm thuộc tính

AutoPostBack="True" của DropDownList

2. Điều khiển ListBox

Là điều khiển giống với DropDownList nhưng có thể hiển thị một danh sách trên trang và chúng ta có thể lựa chọn một hoặc nhiều phần tử cùng một lúc.

Thuộc tính

Rows: Quy định số dịng được hiển thị ra màn hình SelectionMode: Quy định lựa chọn

 Single: Cho phép chọn một dòng trong ListBox

 Multiple: Cho phép chọn nhiều dòng trong ListBox cùng một lúc Cách đưa dữ liệu vào Control giống tương tự như DropDownList.

3. Điều khiển RadioButtonList

Cho phép hiển thị một danh sách các lựa chọn, người sử dụng chỉ chọn một lựa chọn một lần.

Thuộc tính

RepeatColumns: Cho phép các lựa chọn lặp lại bao nhiêu cột RepeatDirection: Quy định hướng hiển thị của các lựa

 Horizontal: Hiển thị theo hàng ngang

 Vertical: Hiển thị theo hàng dọc (Default Value)

VD: Tạo danh sách gồm 5 mục chọn

<asp:RadioButtonList runat="server" RepeatColumns="2"> <asp:ListItem Value="1">Muc so 1</asp:ListItem> <asp:ListItem Value="2">Muc so 2</asp:ListItem> <asp:ListItem Value="3">Muc so 3</asp:ListItem> <asp:ListItem Value="4">Muc so 4</asp:ListItem> <asp:ListItem Value="5">Muc so 5</asp:ListItem> </asp:RadioButtonList>

Cách đưa dữ liệu vào Control giống tương tự như DropDownList.

4. Điều khiển CheckBoxList

Giống lựa chọn RadioButtonList, nhưng cho phép người dùng chọn nhiều giá trị cùng một lúc

Thuộc tính

RepeatColumns: Cho phép các lựa chọn lặp lại bao nhiêu cột RepeatDirection: Quy định hướng hiển thị của các lựa

 Horizontal: Hiển thị theo hàng ngang

 Vertical: Hiển thị theo hàng dọc (Default Value) Cách đưa dữ liệu vào Control giống tương tự như DropDownList.

Bài 6

Một phần của tài liệu lập trình ứng dụng web với asp.net (Trang 47 - 51)