ASP.NET ListControl 控件为列表控件提供了所有基本的功能
继承自该控件的控件包括:CheckBoxList、DropDownList、ListBox 以及 RadioButtonList 类
ListControl 类的属性允许开发者指定用来填充列表控件的数据源
属性
属性 | 描述 | .NET |
---|---|---|
AppendDataBoundItems | 获取或设置一个布尔值,该值指示是否在绑定数据之前清除列表项 | 2.0 |
AutoPostBack | 获取或设置一个值,该值指示当用户更改列表中的选定内容时,是否自动向服务器进行回传 | 1.0 |
CausesValidation | 规定在列表控件中的项目被点击时,是否验证页面 | 2.0 |
DataTextField | 为列表项提供文本内容的数据源字段 | 1.0 |
DataTextFormatString | 用于规定如何显示列表数据的格式化字符串 | 1.0 |
DataValueField | 为各列表项提供值的数据源字段 | 1.0 |
Items | 列表中列表控件项的集合 | 1.0 |
runat | 规定该控件是服务器控件。必须设置为 "server" | 1.0 |
SelectedIndex | 列表中选定项的序号索引 | 1.0 |
SelectedItem | 列表中选定项的文本 | 1.0 |
SelectedValue | 列表中选定项的值 | 1.0 |
TagKey | 1.0 | |
Text | 列表中选定项的值 | 2.0 |
ValidationGroup | 当 Postback 发生时,被验证的控件组 | 2.0 |
OnSelectedIndexChanged | 当选定项的 index 被更改时,被执行的函数的名称 | 1.0 |
ASP.NET AutoPostBack 属性
ASP.NET ListControl AutoPostBack 属性用于设置或返回当用户在列表控件中选择一个项目时,是否发生自动回传到服务器的操作
如果把该属性设置为 TRUE,则启用自动回传,否则为 FALSE
默认是 FALSE
语法
<asp:SomeListControl AutoPostBack="TRUE|FALSE" runat="server" />
范例
下面的范例把 RadioButtonList 控件的 AutoPostBack 属性设置为 "TRUE"
<script runat="server">
Sub Change(obj As Object, e As EventArgs)
Response.Write("You selected " & rb1.SelectedItem.Text)
End Sub
</script>
<form runat=server>
<asp:RadioButtonList id="rb1"
AutoPostBack="True"
runat="server"
OnSelectedIndexChanged="Change">
<asp:ListItem Text="Item 1" />
<asp:ListItem Text="Item 2" />
</asp:RadioButtonList>
</form>
ASP.NET DataTextField 属性
ASP.NET DataTextField 属性规定要绑定到控件中每个项目的 Text 属性的数据源字段
范例
下面的范例使用一个 XML 文件来填充 RadioButtonList 的数据
<%@ Import Namespace="System.Data" %>
<script runat="server">
sub Page_Load
if Not Page.IsPostBack then
dim mycountries=New DataSet
mycountries.ReadXml(MapPath("countries.xml"))
rb.DataSource=mycountries
rb.DataValueField="value"
rb.DataTextField="text"
rb.DataBind()
end if
end sub
sub displayMessage(s as Object,e As EventArgs)
lbl1.text="You selected: " & rb.SelectedItem.Text
end sub
</script>
<form runat="server">
<asp:RadioButtonList id="rb" AutoPostBack="True"
runat="server" onSelectedIndexChanged="displayMessage" />
<asp:label id="lbl1" runat="server" />
</form>
ASP.NET DataValueField 属性
ASP.NET DataValueField 属性规定要绑定到控件中每个项目的 Value 属性的数据源字段
范例
下面的范例使用一个 XML 文件来填充 RadioButtonList 的数据
<%@ Import Namespace="System.Data" %>
<script runat="server">
sub Page_Load
if Not Page.IsPostBack then
dim mycountries=New DataSet
mycountries.ReadXml(MapPath("countries.xml"))
rb.DataSource=mycountries
rb.DataValueField="value"
rb.DataTextField="text"
rb.DataBind()
end if
end sub
sub displayMessage(s as Object,e As EventArgs)
lbl1.text="You selected: " & rb.SelectedItem.Text
end sub
</script>
<form runat="server">
<asp:RadioButtonList id="rb" AutoPostBack="True"
runat="server" onSelectedIndexChanged="displayMessage" />
<asp:label id="lbl1" runat="server" />
</form>
ASP.NET Items 属性
ASP.NET Items 属性表示列表控件中的项目
该属性通常用于获取列表控件中每个项目的属性
范例
下面的范例显示了多个被选中的复选框项目
<script runat="server">
Sub ClickCheck(sender As Object, e As EventArgs)
lbl1.Text = "Selected Item(s):<br />"
Dim i As Integer
For i = 0 To cb1.Items.Count - 1
If cb1.Items(i).Selected Then
lbl1.Text = lbl1.Text & cb1.Items(i).Text & "<br />"
End If
Next
End Sub
</script>
<form method="post" runat="server">
<asp:CheckBoxList id="cb1"
AutoPostBack="True"
OnSelectedIndexChanged="ClickCheck"
runat="server">
<asp:ListItem Value="Item 1" />
<asp:ListItem Value="Item 2" />
<asp:ListItem Value="Item 3" />
<asp:ListItem Value="Item 4" />
</asp:CheckBoxList>
<br />
<asp:label id="lbl1" runat="server"/>
</form>
ASP.NET SelectedIndex 属性
ASP.NET SelectedIndex 属性表示列表中选定项的序号索引
范例
下面的范例获取 RadioButtonList 控件中的某个 ListItem 的索引
<script runat="server">
Sub Change(obj As Object, e As EventArgs)
Response.Write("Selected index: " & rb1.SelectedIndex)
End Sub
</script>
<form runat=server>
<asp:RadioButtonList id="rb1"
AutoPostBack="true"
runat="server"
OnSelectedIndexChanged="Change">
<asp:ListItem Text="Item 1" />
<asp:ListItem Text="Item 2" />
</asp:RadioButtonList>
</form>
ASP.NET SelectedItem 属性
ASP.NET SelectedItem 属性表示列表中选定项的文本
范例
下面的范例获取 RadioButtonList 控件中的某个 ListItem 的文本
<script runat="server">
Sub Change(obj As Object, e As EventArgs)
Response.Write("You selected " & rb1.SelectedItem.Text)
End Sub
</script>
<form runat=server>
<asp:RadioButtonList id="rb1"
AutoPostBack="true"
runat="server"
OnSelectedIndexChanged="Change">
<asp:ListItem Text="Item 1" />
<asp:ListItem Text="Item 2" />
</asp:RadioButtonList>
</form>
ASP.NET SelectedValue 属性
ASP.NET SelectedValue 属性表示列表中选定项的值
范例
下面的范例获取 RadioButtonList 控件中的某个 ListItem 的值
<script runat="server">
Sub Change(obj As Object, e As EventArgs)
Response.Write("You selected " & rb1.SelectedValue)
End Sub
</script>
<form runat=server>
<asp:RadioButtonList id="rb1"
AutoPostBack="true"
runat="server"
OnSelectedIndexChanged="Change">
<asp:ListItem Value="Item 1" />
<asp:ListItem Value="Item 2" />
</asp:RadioButtonList>
</form>
ASP.NET Text 属性
ASP.NET Text 属性表示列表中选定项的值文本
范例
下面的范例获取 RadioButtonList 控件中的某个 ListItem 的文本
<script runat="server">
Sub Change(obj As Object, e As EventArgs)
Response.Write("You selected " & rb1.Text)
End Sub
</script>
<form runat="server">
<asp:RadioButtonList id="rb1"
AutoPostBack="true"
runat="server"
OnSelectedIndexChanged="Change">
<asp:ListItem Value="Item 1" />
<asp:ListItem Value="Item 2" />
</asp:RadioButtonList>
</form>
ASP.NET ValidationGroup 属性
ASP.NET ValidationGroup 属性规定验证时被验证的控件组
该属性通常在表单中有若干个按钮时使用
语法
<asp:SomeListControl ValidationGroup="group" runat="server" />
属性 | 描述 |
---|---|
group | 要验证的控件组 |
范例
下面的范例验证指定的控件组
<form runat="server">
<asp:RadioButtonList id="rb1"
ValidationGroup="valGroup1"
runat="server">
<asp:ListItem Value="Item 1" />
<asp:ListItem Value="Item 2" />
</asp:RadioButtonList>
<asp:RequiredFieldValidator id="ReqField1"
ControlToValidate="rb1"
ErrorMessage="Required"
ValidationGroup="ValGroup1"
runat="server" />
<asp:Button id="Bt1"
Text="Validate"
CausesValidation="True"
ValidationGroup="ValGroup1"
runat="server" />
</form>