RadioButtonList 类  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示封装一组单选按钮控件的列表控件。
public ref class RadioButtonList : System::Web::UI::WebControls::ListControl, System::Web::UI::INamingContainer, System::Web::UI::IPostBackDataHandler, System::Web::UI::WebControls::IRepeatInfoUser[System.Web.UI.ValidationProperty("SelectedItem")]
public class RadioButtonList : System.Web.UI.WebControls.ListControl, System.Web.UI.INamingContainer, System.Web.UI.IPostBackDataHandler, System.Web.UI.WebControls.IRepeatInfoUser[<System.Web.UI.ValidationProperty("SelectedItem")>]
type RadioButtonList = class
    inherit ListControl
    interface IRepeatInfoUser
    interface INamingContainer
    interface IPostBackDataHandlerPublic Class RadioButtonList
Inherits ListControl
Implements INamingContainer, IPostBackDataHandler, IRepeatInfoUser- 继承
- 继承
- 属性
- 实现
示例
下面的代码示例演示如何以编程方式修改控件的 RadioButtonList 显示。
注意
下面的代码示例使用单文件代码模型,如果直接复制到代码隐藏文件中,可能无法正常工作。 此代码示例必须复制到扩展名为 .aspx 的空文本文件中。 有关 Web 窗体代码模型的详细信息,请参阅 ASP.NET Web 窗体页代码模型。
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
 <head>
    <title>RadioButtonList Example</title>
<script language="C#" runat="server">
 
        void Button1_Click(object Source, EventArgs e) 
        {
           if (RadioButtonList1.SelectedIndex > -1) 
           {  
              Label1.Text = "You selected: " + RadioButtonList1.SelectedItem.Text;
           }
        }
 
        void chkLayout_CheckedChanged(Object sender, EventArgs e) 
        {
        
           if (chkLayout.Checked == true) 
           {
              RadioButtonList1.RepeatLayout = RepeatLayout.Table;
           }
           else 
           {
              RadioButtonList1.RepeatLayout = RepeatLayout.Flow;
           }     
        }
        
        void chkDirection_CheckedChanged(Object sender, EventArgs e) 
        {
        
           if (chkDirection.Checked == true) 
           {
              RadioButtonList1.RepeatDirection = RepeatDirection.Horizontal;
           }
           else 
           {
              RadioButtonList1.RepeatDirection = RepeatDirection.Vertical;
           }  
        }
 
     </script>
 
 </head>
 <body>
 
     <h3>RadioButtonList Example</h3>
 
     <form id="form1" runat="server">
 
         <asp:RadioButtonList id="RadioButtonList1" runat="server">
            <asp:ListItem>Item 1</asp:ListItem>
            <asp:ListItem>Item 2</asp:ListItem>
            <asp:ListItem>Item 3</asp:ListItem>
            <asp:ListItem>Item 4</asp:ListItem>
            <asp:ListItem>Item 5</asp:ListItem>
            <asp:ListItem>Item 6</asp:ListItem>
         </asp:RadioButtonList>
 
         <br />
         
         <asp:CheckBox id="chkLayout" OnCheckedChanged="chkLayout_CheckedChanged" Text="Display Table Layout" Checked="true" AutoPostBack="true" runat="server" />
 
         <br />
         
         <asp:CheckBox id="chkDirection" OnCheckedChanged="chkDirection_CheckedChanged" Text="Display Horizontally" AutoPostBack="true" runat="server" />
 
         <br />
         
         <asp:Button id="Button1" Text="Submit" onclick="Button1_Click" runat="server"/>
 
         <br />
         
         <asp:Label id="Label1" font-names="Verdana" font-size="8pt" runat="server"/>
 
     </form>
 
 </body>
 </html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
 <head>
    <title>RadioButtonList Example</title>
<script language="VB" runat="server">
    Sub Button1_Click(Source As Object, e As EventArgs)
        If RadioButtonList1.SelectedIndex > - 1 Then
            Label1.Text = "You selected: " & RadioButtonList1.SelectedItem.Text
        End If
    End Sub
    Sub chkLayout_CheckedChanged(sender As Object, e As EventArgs)        
        If chkLayout.Checked = True Then
            RadioButtonList1.RepeatLayout = RepeatLayout.Table
        Else
            RadioButtonList1.RepeatLayout = RepeatLayout.Flow
        End If
    End Sub
    Sub chkDirection_CheckedChanged(sender As Object, e As EventArgs)        
        If chkDirection.Checked = True Then
            RadioButtonList1.RepeatDirection = RepeatDirection.Horizontal
        Else
            RadioButtonList1.RepeatDirection = RepeatDirection.Vertical
        End If
    End Sub
 
     </script>
 
 </head>
 <body>
 
     <h3>RadioButtonList Example</h3>
 
     <form id="form1" runat="server">
 
         <asp:RadioButtonList id="RadioButtonList1" runat="server">
            <asp:ListItem>Item 1</asp:ListItem>
            <asp:ListItem>Item 2</asp:ListItem>
            <asp:ListItem>Item 3</asp:ListItem>
            <asp:ListItem>Item 4</asp:ListItem>
            <asp:ListItem>Item 5</asp:ListItem>
            <asp:ListItem>Item 6</asp:ListItem>
         </asp:RadioButtonList>
 
         <br />
         
         <asp:CheckBox id="chkLayout" OnCheckedChanged="chkLayout_CheckedChanged" Text="Display Table Layout" Checked="true" AutoPostBack="true" runat="server" />
 
         <br />
         
         <asp:CheckBox id="chkDirection" OnCheckedChanged="chkDirection_CheckedChanged" Text="Display Horizontally" AutoPostBack="true" runat="server" />
 
         <br />
         
         <asp:Button id="Button1" Text="Submit" onclick="Button1_Click" runat="server"/>
 
         <br />
         
         <asp:Label id="Label1" font-names="Verdana" font-size="8pt" runat="server"/>
 
     </form>
 
 </body>
 </html>
注解
本主题内容:
介绍
控件 RadioButtonList 为页面开发人员提供可通过数据绑定动态生成的单选单选按钮组。 它包含一个 Items 集合,其中包含与列表中的单个项对应的成员。 若要确定选择了哪个项,请测试 SelectedItem 列表的 属性。
指定列表布局
可以通过设置 RepeatLayout 和 RepeatDirection 属性来指定列表的呈现方式。 有关布局选项的信息,请参阅 RepeatLayout 枚举。
默认情况下,RepeatDirection 设置为 RepeatDirection.Vertical。 将此属性设置为 RepeatDirection.Horizontal 会导致控件水平呈现列表。 某些 RepeatLayout 设置不允许水平布局。 有关详细信息,请参见 RepeatLayout 枚举。
注意
此控件可用于显示用户输入,其中可能包括恶意客户端脚本。 在应用程序中显示之前,请检查从客户端发送的任何信息,以获取可执行脚本、SQL 语句或其他代码。 在控件中 RadioButtonList 显示输入文本之前,可以使用验证控件来验证用户输入。 ASP.NET 提供了输入请求验证功能,用于阻止用户输入中的脚本和 HTML。 有关详细信息,请参阅 保护标准控件、 如何:通过对字符串应用 HTML 编码在 Web 应用程序中防止脚本攻击和 验证 ASP.NET 网页中的用户输入。
可访问性
有关如何配置此控件以便生成符合辅助功能标准的标记的信息,请参阅 Visual Studio 中的辅助功能和 ASP.NET 和 ASP.NET 控件和辅助功能。
声明性语法
<asp:RadioButtonList  
    AccessKey="string"  
    AppendDataBoundItems="True|False"  
    AutoPostBack="True|False"  
    BackColor="color name|#dddddd"  
    BorderColor="color name|#dddddd"  
    BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|  
        Inset|Outset"  
    BorderWidth="size"  
    CausesValidation="True|False"  
    CellPadding="integer"  
    CellSpacing="integer"  
    CssClass="string"  
    DataMember="string"  
    DataSource="string"  
    DataSourceID="string"  
    DataTextField="string"  
    DataTextFormatString="string"  
    DataValueField="string"  
    Enabled="True|False"  
    EnableTheming="True|False"  
    EnableViewState="True|False"  
    Font-Bold="True|False"  
    Font-Italic="True|False"  
    Font-Names="string"  
    Font-Overline="True|False"  
    Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|  
        Large|X-Large|XX-Large"  
    Font-Strikeout="True|False"  
    Font-Underline="True|False"  
    ForeColor="color name|#dddddd"  
    Height="size"  
    ID="string"  
    OnDataBinding="DataBinding event handler"  
    OnDataBound="DataBound event handler"  
    OnDisposed="Disposed event handler"  
    OnInit="Init event handler"  
    OnLoad="Load event handler"  
    OnPreRender="PreRender event handler"  
    OnSelectedIndexChanged="SelectedIndexChanged event handler"  
    OnTextChanged="TextChanged event handler"  
    OnUnload="Unload event handler"  
    RepeatColumns="integer"  
    RepeatDirection="Horizontal|Vertical"  
    RepeatLayout="Table|Flow|OrderedList|UnorderedList"  
    runat="server"  
    SelectedIndex="integer"  
    SelectedValue="string"  
    SkinID="string"  
    Style="string"  
    TabIndex="integer"  
    TextAlign="Left|Right"  
    ToolTip="string"  
    ValidationGroup="string"  
    Visible="True|False"  
    Width="size"  
>  
            <asp:ListItem  
                Enabled="True|False"  
                Selected="True|False"  
                Text="string"  
                Value="string"  
            />  
</asp:RadioButtonList>  
构造函数
| RadioButtonList() | 初始化 RadioButtonList 类的新实例。 | 
属性
| AccessKey | 获取或设置使您得以快速导航到 Web 服务器控件的访问键。(继承自 WebControl) | 
| Adapter | 获取控件的浏览器特定适配器。(继承自 Control) | 
| AppendDataBoundItems | 获取或设置指示是否在绑定数据之前清除列表项的值。(继承自 ListControl) | 
| AppRelativeTemplateSourceDirectory | 获取或设置包含该控件的 Page 或 UserControl 对象的应用程序相对虚拟目录。(继承自 Control) | 
| Attributes | 获取与控件的特性不对应的任意特性(只用于呈现)的集合。(继承自 WebControl) | 
| AutoPostBack | 获取或设置一个值,该值指示当用户更改列表中的选定内容时是否自动产生向服务器的回发。(继承自 ListControl) | 
| BackColor | 获取或设置 Web 服务器控件的背景色。(继承自 WebControl) | 
| BindingContainer | 获取包含该控件的数据绑定的控件。(继承自 Control) | 
| BorderColor | 获取或设置 Web 控件的边框颜色。(继承自 WebControl) | 
| BorderStyle | 获取或设置 Web 服务器控件的边框样式。(继承自 WebControl) | 
| BorderWidth | 获取或设置 Web 服务器控件的边框宽度。(继承自 WebControl) | 
| CausesValidation | 获取或设置指示在单击从 ListControl 类派生的控件时是否执行验证的值。(继承自 ListControl) | 
| CellPadding | 获取或设置表格单元格的边框和内容之间的距离(以像素为单位)。 | 
| CellSpacing | 获取或设置相邻表格单元格之间的距离(以像素为单位)。 | 
| ChildControlsCreated | 获取一个值,该值指示是否已创建服务器控件的子控件。(继承自 Control) | 
| ClientID | 获取由 ASP.NET 生成的 HTML 标记的控件 ID。(继承自 Control) | 
| ClientIDMode | 获取或设置用于生成 ClientID 属性值的算法。(继承自 Control) | 
| ClientIDSeparator | 获取一个字符值,该值表示 ClientID 属性中使用的分隔符字符。(继承自 Control) | 
| Context | 为当前 Web 请求获取与服务器控件关联的 HttpContext 对象。(继承自 Control) | 
| Controls | 获取 ControlCollection 对象,该对象表示 UI 层次结构中的指定服务器控件的子控件。(继承自 Control) | 
| ControlStyle | 获取 Web 服务器控件的样式。 此属性主要由控件开发人员使用。(继承自 WebControl) | 
| ControlStyleCreated | 获取一个值,该值指示是否已为 Style 属性创建了 ControlStyle 对象。 此属性主要由控件开发人员使用。(继承自 WebControl) | 
| CssClass | 获取或设置由 Web 服务器控件在客户端呈现的级联样式表 (CSS) 类。(继承自 WebControl) | 
| DataItemContainer | 如果命名容器实现 IDataItemContainer,则获取对命名容器的引用。(继承自 Control) | 
| DataKeysContainer | 如果命名容器实现 IDataKeysControl,则获取对命名容器的引用。(继承自 Control) | 
| DataMember | 获取或设置 DataSource 中要绑定到控件的特定表。(继承自 ListControl) | 
| DataSource | 获取或设置填充列表控件项的数据源。(继承自 ListControl) | 
| DataSourceID | 获取或设置控件的 ID,数据绑定控件从该控件中检索其数据项列表。(继承自 DataBoundControl) | 
| DataSourceObject | 获取一个对象,该对象实现 IDataSource 接口,以便提供对该对象的数据内容的访问。(继承自 DataBoundControl) | 
| DataTextField | 获取或设置为列表项提供文本内容的数据源字段。(继承自 ListControl) | 
| DataTextFormatString | 获取或设置格式化字符串,该字符串用来控制如何显示绑定到列表控件的数据。(继承自 ListControl) | 
| DataValueField | 获取或设置为各列表项提供值的数据源字段。(继承自 ListControl) | 
| DesignMode | 获取一个值,该值指示是否正在使用设计图面上的一个控件。(继承自 Control) | 
| Enabled | 获取或设置一个值,该值指示是否启用 Web 服务器控件。(继承自 WebControl) | 
| EnableTheming | 获取或设置一个值,该值指示主题是否应用于该控件。(继承自 WebControl) | 
| EnableViewState | 获取或设置一个值,该值指示服务器控件是否向发出请求的客户端保持自己的视图状态以及它所包含的任何子控件的视图状态。(继承自 Control) | 
| Events | 获取控件的事件处理程序委托列表。 此属性为只读。(继承自 Control) | 
| Font | 获取与 Web 服务器控件关联的字体属性。(继承自 WebControl) | 
| ForeColor | 获取或设置 Web 服务器控件的前景色(通常是文本颜色)。(继承自 WebControl) | 
| HasAttributes | 获取一个值,该值指示控件是否具有特性集。(继承自 WebControl) | 
| HasChildViewState | 获取一个值,该值指示当前服务器控件的子控件是否具有任何已保存的视图状态设置。(继承自 Control) | 
| HasFooter | 获取指示 RadioButtonList 控件是否包含页脚部分的值。 | 
| HasHeader | 获取指示 RadioButtonList 控件是否包含标题部分的值。 | 
| HasSeparators | 获取指示 RadioButtonList 控件是否包含列表中项之间的分隔符的值。 | 
| Height | 获取或设置 Web 服务器控件的高度。(继承自 WebControl) | 
| ID | 获取或设置分配给服务器控件的编程标识符。(继承自 Control) | 
| IdSeparator | 获取用于分隔控件标识符的字符。(继承自 Control) | 
| Initialized | 获取一个值,该值指示数据绑定控件是否已经初始化。(继承自 BaseDataBoundControl) | 
| IsBoundUsingDataSourceID | 获取指示是否设置 DataSourceID 属性的值。(继承自 BaseDataBoundControl) | 
| IsChildControlStateCleared | 获取一个值,该值指示该控件中包含的控件是否具有控件状态。(继承自 Control) | 
| IsDataBindingAutomatic | 获取一个值,该值指示数据绑定是否自动进行。(继承自 BaseDataBoundControl) | 
| IsEnabled | 获取一个值,该值指示是否启用控件。(继承自 WebControl) | 
| IsTrackingViewState | 获取一个值,用于指示服务器控件是否会将更改保存到其视图状态中。(继承自 Control) | 
| IsUsingModelBinders | 获取一个值,该值指示是否使用模型绑定。(继承自 DataBoundControl) | 
| IsViewStateEnabled | 获取一个值,该值指示是否为该控件启用了视图状态。(继承自 Control) | 
| Items | 获取列表控件项的集合。(继承自 ListControl) | 
| ItemType | 获取或设置强类型化数据绑定的数据项目类型的名称。(继承自 DataBoundControl) | 
| LoadViewStateByID | 获取一个值,该值指示控件是否通过 ID 而不是索引参与加载其视图状态。(继承自 Control) | 
| NamingContainer | 获取对服务器控件的命名容器的引用,此引用创建唯一的命名空间,以区分具有相同 ID 属性值的服务器控件。(继承自 Control) | 
| Page | 获取对包含服务器控件的 Page 实例的引用。(继承自 Control) | 
| Parent | 获取对页 UI 层次结构中服务器控件的父控件的引用。(继承自 Control) | 
| RenderingCompatibility | 获取一个值,该值指定呈现的 HTML 将与之兼容的 ASP.NET 版本。(继承自 Control) | 
| RenderWhenDataEmpty | 获取或设置一个值,该值指示是否在数据源没有数据或控件未进行数据绑定时呈现控件。 | 
| RepeatColumns | 获取或设置要在 RadioButtonList 控件中显示的列数。 | 
| RepeatDirection | 获取或设置组内单选按钮的显示方向。 | 
| RepeatedItemCount | 获取 RadioButtonList 控件中列表项的数量。 | 
| RepeatLayout | 获取或设置一个值,该值指示是否将使用  | 
| RequiresDataBinding | 获取或设置一个值,该值指示是否应调用 DataBind() 方法。(继承自 BaseDataBoundControl) | 
| SelectArguments | 获取数据绑定控件从数据源控件检索数据时使用的 DataSourceSelectArguments 对象。(继承自 DataBoundControl) | 
| SelectedIndex | 获取或设置列表中选定项的最低序号索引。(继承自 ListControl) | 
| SelectedItem | 获取列表控件中索引最小的选定项。(继承自 ListControl) | 
| SelectedValue | 获取列表控件中选定项的值,或选择列表控件中包含指定值的项。(继承自 ListControl) | 
| SelectMethod | 为了读取数据要调用的方法的名称。(继承自 DataBoundControl) | 
| Site | 获取容器信息,该容器在呈现于设计图面上时承载当前控件。(继承自 Control) | 
| SkinID | 获取或设置要应用于控件的外观。(继承自 WebControl) | 
| Style | 获取将在 Web 服务器控件的外部标记上呈现为样式特性的文本特性的集合。(继承自 WebControl) | 
| SupportsDisabledAttribute | 获取一个值,该值指示在控件的  | 
| SupportsDisabledAttribute | 获取一个值,该值指示在控件的  | 
| TabIndex | 获取或设置 Web 服务器控件的选项卡索引。(继承自 WebControl) | 
| TagKey | 获取 ListControl 控件的 HtmlTextWriterTag 值。(继承自 ListControl) | 
| TagName | 获取控件标记的名称。 此属性主要由控件开发人员使用。(继承自 WebControl) | 
| TemplateControl | 获取或设置对包含该控件的模板的引用。(继承自 Control) | 
| TemplateSourceDirectory | 获取包含当前服务器控件的 Page 或 UserControl 的虚拟目录。(继承自 Control) | 
| Text | 获取或设置 ListControl 控件的 SelectedValue 属性。(继承自 ListControl) | 
| TextAlign | 获取或设置组内单选按钮的文本对齐方式。 | 
| ToolTip | 获取或设置当鼠标指针悬停在 Web 服务器控件上时显示的文本。(继承自 WebControl) | 
| UniqueID | 获取服务器控件的唯一的、以分层形式限定的标识符。(继承自 Control) | 
| ValidateRequestMode | 获取或设置指示控件是否检查来自浏览器的客户端输入是否具有潜在危险值的值。(继承自 Control) | 
| ValidationGroup | 获取或设置控件组,当从 ListControl 类派生的控件回发到服务器时,将引发对该控件组的验证。(继承自 ListControl) | 
| ViewState | 获取状态信息的字典,这些信息使您可以在同一页的多个请求间保存和还原服务器控件的视图状态。(继承自 Control) | 
| ViewStateIgnoresCase | 获取一个值,该值指示 StateBag 对象是否不区分大小写。(继承自 Control) | 
| ViewStateMode | 获取或设置此控件的视图状态模式。(继承自 Control) | 
| Visible | 获取或设置一个值,该值指示服务器控件是否作为 UI 呈现在页上。(继承自 Control) | 
| Width | 获取或设置 Web 服务器控件的宽度。(继承自 WebControl) | 
方法
事件
| CallingDataMethods | 在数据方法正被调用时发生。(继承自 DataBoundControl) | 
| CreatingModelDataSource | 当 ModelDataSource 对象正被创建时发生。(继承自 DataBoundControl) | 
| DataBinding | 当服务器控件绑定到数据源时发生。(继承自 Control) | 
| DataBound | 在服务器控件绑定到数据源后发生。(继承自 BaseDataBoundControl) | 
| Disposed | 当从内存释放服务器控件时发生,这是请求 ASP.NET 页时服务器控件生存期的最后阶段。(继承自 Control) | 
| Init | 当服务器控件初始化时发生;初始化是控件生存期的第一步。(继承自 Control) | 
| Load | 当服务器控件加载到 Page 对象中时发生。(继承自 Control) | 
| PreRender | 在加载 Control 对象之后、呈现之前发生。(继承自 Control) | 
| SelectedIndexChanged | 当列表控件的选定项在信息发往服务器之间变化时发生。(继承自 ListControl) | 
| TextChanged | 当 Text 和 SelectedValue 属性更改时发生。(继承自 ListControl) | 
| Unload | 当服务器控件从内存中卸载时发生。(继承自 Control) | 
显式接口实现
扩展方法
| EnablePersistedSelection(BaseDataBoundControl) | 
				已过时.
			 使选定内容能够保留在支持选择和分页的数据控件中。 | 
| FindDataSourceControl(Control) | 返回与指定控件的数据控件关联的数据源。 | 
| FindFieldTemplate(Control, String) | 返回指定控件的命名容器中指定列的字段模板。 | 
| FindMetaTable(Control) | 返回包含数据控件的元表对象。 | 
| GetDefaultValues(INamingContainer) | 为指定数据控件获取默认值的集合。 | 
| GetMetaTable(INamingContainer) | 为指定数据控件获取表元数据。 | 
| SetMetaTable(INamingContainer, MetaTable) | 为指定数据控件设置表元数据。 | 
| SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>) | 为指定数据控件设置表元数据和默认值映射。 | 
| SetMetaTable(INamingContainer, MetaTable, Object) | 为指定数据控件设置表元数据和默认值映射。 | 
| TryGetMetaTable(INamingContainer, MetaTable) | 确定表元数据是否可用。 | 
| EnableDynamicData(INamingContainer, Type) | 为指定数据控件启用动态数据行为。 | 
| EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>) | 为指定数据控件启用动态数据行为。 | 
| EnableDynamicData(INamingContainer, Type, Object) | 为指定数据控件启用动态数据行为。 |