简介:
RadioButton
RadioButton 具有两个状态: true 或 false。RadioButton
当是单个RadioButton 时,它不能通过单击其清除。 当分组时 RadioButton 元素,按钮互相排斥。 用户一次只能选择一个RadioButton。
介绍:
1.属性
常用属性
Name | 获取或设置控件的名称。 |
Text | 获取或设置与此控件显示的文本。在此控件中一般不适用。 |
AutoSize | 获取或设置一个值,该值指示控件是否基于其内容调整大小。 |
TextAlign | 获取或设置此控件上的文本对齐方式。 |
Checked | 获取或设置一个值,该值指示是否已选中控件。若选中了单选框,则为 true;反之,则为 false。 |
Appearance | 获取或设置一个值,该值用于确定 RadioButton 的外观。如果 Appearance 值设置为 Normal,则在绘制 RadioButton 控件时使用圆形复选框。 若该值设置为 Button,则将 RadioButton 绘制成一个可切换为向上或向下状态的控件。 每种类型都可显示文本或图像,或同时显示两者。 |
TabStop | 获取或设置一个值,该值指示用户能否使用 Tab 键将焦点放到该控件上。 |
Tag | 获取或设置包含有关控件的数据的对象。 |
2.事件
常用事件
CheckedChanged | 当 Checked 属性的值更改时发生。 |
3.使用
- 一般更改属性Name,Text,使用事件CheckedChanged。当超过两个以上时,可以考虑把不同控件绑定相同的事件,在控件视图属性的CheckedChanged事件输入相同的绑定函数名。当然也可以分别使用不同的绑定函数名。
- 把要互斥的单选框控件放在同一个容器中,常用GroupBox。
单选框控件
单选框事件
4.原理
- CheckedChanged事件和radioButton_CheckedChanged绑定。选择状态更改时,会触发。
this.radioButton1.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
this.radioButton2.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
private void radioButton_CheckedChanged(object sender, EventArgs e)
{
}
5.演示
- 获取选中状态。通过属性Checked判断状态。修改属性Tag或者Text来判断是哪个控件被选中。
- 更改显示样式。Appearance 属性设置为 Button。
- 男女选择
private void radioButton_CheckedChanged(object sender, EventArgs e)
{
RadioButton rbn = sender as RadioButton;
//第一种
if (rbn.Checked)
{
string tag = rbn.Tag.ToString();
if (tag == "男")
{
//Do something
}
else
{
//Do something
}
MessageBox.Show(tag);
}
第二种
//if (rbn.Checked)
//{
// string name = rbn.Text;
// if (name == "男")
// {
// //Do something
// }
// else
// {
// //Do something
// }
// MessageBox.Show(name);
//}
}
效果