RadioButton 控件和 RadioButtonList 控件使用户能够从一小组互相排斥的预定义选项中进行选择。
一、功能
可以使用 CheckBox 控件和 CheckBoxList 控件执行以下操作:
·当选中某个单选按钮时引起页回发。
·当用户选中某个单选按钮时捕获用户交互。
·将每个单选按钮绑定到数据库中的数据。
二、背景
在向 ASP.NET 网页添加单选按钮时,可以使用两种 Web 服务器控件:单个 RadioButton 控件或 RadioButtonList 控件。这两种控件都使用户能够从一小组互相排斥的预定义选项中进行选择。您可以使用这些控件定义任意数目的带标签的单选按钮,并将它们水平或垂直排列。
您可以向页面添加单个 RadioButton 控件,并单独使用这些控件。通常是将两个或多个单独的按钮组合在一起。
或者,可以使用 RadioButtonList 控件,这是一个单一控件,可用作一组单选按钮列表项的父控件。该控件是从基 ListControl 类中派生的,因此,其工作方式与 ListBox、DropDownList、BulletedList 和 CheckBoxList Web 服务器控件非常相似。使用 RadioButtonList 控件的很多过程与使用其他列表 Web 服务器控件的过程相同。
这两类控件都有各自的优点。使用单个的 RadioButton 控件相对于使用 RadioButtonList 控件,可以更好地控制单选按钮组的布局。例如,您可以在各单选按钮之间包含非单选按钮文本。
如果您想要基于数据源中的数据创建一组单选按钮,则 RadioButtonList 控件是更好的选择。在编写代码以检查所选定的按钮方面,它也稍微简单一些。
说明: 您还可以使用 HtmlInputRadioButton 服务器控件来向 ASP.NET 网页添加单选按钮。
如果要向用户提供较长的选项列表或在运行时长度可能会变的列表,请使用 ListBox 或 DropDownList Web 服务器控件。
1、对单选按钮分组
单选按钮很少单独使用,而是进行分组以提供一组互斥的选项。在一个组内,每次只能选择一个单选按钮。您可以用下列方法创建分组的单选按钮:
先向页中添加单个的 RadioButton Web 服务器控件,然后将所有这些控件手动分配到一个组中。组名称可以是任意名称;具有相同组名称的所有单选按钮将视为单个组的组成部分。
向页中添加一个 RadioButtonList Web 服务器控件。该控件中的列表项将自动进行分组。
2、RadioButton 和 RadioButtonList 事件
在单个 RadioButton 控件和 RadioButtonList 控件之间,事件的工作方式有所不同。