RadioButtonList 控件用于創(chuàng)建單選按鈕組。RadioButtonList 控件中的每個(gè)可選項(xiàng)是通過 ListItem 元素來定義的!提示:該控件支持?jǐn)?shù)據(jù)綁定! 由于每一個(gè)RadioButton Web 控件是獨(dú)立的控件,若要判斷同一個(gè)群組內(nèi)的 RadioButton 是否被選擇,則必須判斷所有的 RadioButton Web 控件的 Checked屬性,這樣做效率很低。而RadioButtonList Web控件可以管理許多選項(xiàng)。 對(duì)于通過使用數(shù)據(jù)綁定創(chuàng)建的一組單選按鈕而言,RadioButtonList控件更易于使用,而單個(gè)RadioButton控件則能夠更好地控制布局。如果要綁定數(shù)據(jù)源,必須使用此控件。
一、RadioButtonList 控件屬性和事件 1、AutoPostBack屬性:用于設(shè)置當(dāng)單擊RadioButtonList控件時(shí),是否自動(dòng)回送到服務(wù)器。True表示回送;False(默認(rèn))表示不回送。 2、DataSource屬性:用于指定填充列表控件的數(shù)據(jù)源。 3、DataTextField屬性:用于指定DataSource中的一個(gè)字段,該字段的值對(duì)應(yīng)于列表項(xiàng)的Text屬性。 4、DataValueField屬性:用于指定DataSource中的一個(gè)字段,該字段的值對(duì)應(yīng)于列表項(xiàng)的Value屬性。 5、Items屬性:表示列表中各個(gè)選項(xiàng)的集合,如RadioButtonList1.Items(i) 表示第i個(gè)選項(xiàng),i從0開始。每個(gè)選項(xiàng)都有以下3個(gè)基本屬性: Text屬性:表示每個(gè)選項(xiàng)的文本。 Value屬性:表示每個(gè)選項(xiàng)的選項(xiàng)值。 Selected屬性:表示該選項(xiàng)是否被選中。 Count屬性:通過Items.Count屬性可獲得CheckBoxList控件的選項(xiàng)數(shù); Add方法:通過items.Add方法可以向CheckBoxList控件添加選項(xiàng); Remove方法:通過items.Remove方法,可從CheckBoxList控件中刪除指定的選項(xiàng); Insert方法:通過items.insert方法,可將一個(gè)新的選項(xiàng)插入到CheckBoxList控件中; Clear方法:通過items.clear方法可以清空CheckBoxList控件中的選項(xiàng)。 6、RepeatColumns屬性:用于指定在CheckBoxList控件中顯示選項(xiàng)占用幾列。默認(rèn)值為0,表示任意多列。 7、RepeatDirection屬性:用于指定CheckBoxList控件的顯示方向。Vertical時(shí),列表項(xiàng)以列優(yōu)先排列的形式顯示;Horizontal時(shí),列項(xiàng)以行優(yōu)先排列的形式顯示。 8、RepeatLayout屬性:用于設(shè)置選項(xiàng)的排列方式。Table(默認(rèn))時(shí),以表結(jié)構(gòu)顯示,屬性值為Flow時(shí),不以表結(jié)構(gòu)顯示。 9、SelectedIndex屬性:用于獲取或設(shè)置列表中選定項(xiàng)的最低序號(hào)索引值。如果列表控件中只有一個(gè)選項(xiàng)被選中,則該屬性表示當(dāng)前選定項(xiàng)的索引值。 10、SelectedItem屬性:用于獲取列表控件中索引值最小的選定項(xiàng)。如果列表中只有一個(gè)選項(xiàng)被選中,則該屬性表示當(dāng)前選定項(xiàng)。通過該屬性可獲得選定項(xiàng)的Text和Value屬性值。 11、TextAlign屬性:用于指定列表中各項(xiàng)文本的顯示位置。當(dāng)該屬性值為Right(默認(rèn))時(shí),文本顯示在單選按鈕的右邊;當(dāng)屬性值為Left時(shí),文本顯示在單選按鈕的左邊。 12、SelectIndexChange事件:當(dāng)用戶選擇了列表中的任意選項(xiàng)時(shí),都將引發(fā)SelectedIndexChange事件。
二、使用語法
<ASP:RadioButtonList
Id="控件名稱"
Runat="Server"
AutoPostBack="True | False"
CellPadding="像素"
DataSource="<%數(shù)據(jù)源%>"
DataTextField="數(shù)據(jù)源的字段"
DataValueField="數(shù)據(jù)源的字段"
RepeatColumns="字段數(shù)量"
RepeatDirection="Vertical | Horizontal"
RepeatLayout="Flow | Table"
TextAlign="Right | Left"
OnSelectedIndexChanged="事件程序名稱"
>
<ASP:ListItem/> //選項(xiàng)
</ASP:RadioButtonList>
三、使用實(shí)例
<%@ Page Language="C#" AutoEventWireup="True" %> <html> <head> <script runat="server"> void SubmitBtn_Click(Object Sender, EventArgs e) { if (Radio1.Checked) Label1.Text = "您選擇了: " + Radio1.Text; else if (Radio2.Checked) Label1.Text = "您選擇了: " + Radio2.Text; else if (Radio3.Checked) Label1.Text = "您選擇了: " + Radio3.Text; } </script> </head> <body> <form runat="server"> <h3>RadioButton示例</h3> <h4>選擇一種你想要的安裝類型:</h4> <asp:RadioButton id="Radio1" Text="典型安裝" Checked="True" GroupName="RadioGroup1" runat="server" /><br> 這個(gè)選項(xiàng)將安裝最常用的組件。需要1.2M硬盤空間。<p> <asp:RadioButton id="Radio2" Text="精簡(jiǎn)安裝" GroupName="RadioGroup1" runat="server"/><br> 這個(gè)選項(xiàng)將安裝運(yùn)行該產(chǎn)品所需要的最小文件。需要350KB的硬盤空間。<p> <asp:RadioButton id="Radio3" Text="完全安裝" GroupName="RadioGroup1" runat="server"/><br> 這個(gè)選項(xiàng)將安裝所有的組件。需要4.3M硬盤空間。<p> <asp:Button id="Button1" Text="Submit" OnClick="SubmitBtn_Click" runat=server/> <asp:Label id="Label1" Font-Bold="true" runat="server" /> </form> </body> </html>
|