常用属性:Name、Text、Checked、AutoCheck、CheckAlign
常用事件:click 不管选择状态是什么,都会引发事件
CheckedChanged 选择改变时引发事件,一般使用CheckedChanged比较多
知识点1:
一般一组RadioButton中只能选择一个为选中状态,当其中一个选中后其他Radio Button自动切换为未选中状态。
一组RadioButton中,只要设置一个RadioButton的AutoCheck=false,则一组RadioButton可以有多个选中。
知识点2:
如何将多个RadioButton分组?
将不同功能的RadioButton放到不同的容器控件中即可以实现RadioButton分组。
比如上面的例子中,将男、女RadioButton放到一个Panel中,将正常、冻结RadioButton放到另一个Panel中,就实现了分组,两组RadioButton之间的操作互不干扰。
知识点3:
通过按钮获得选择结果,如下:
方法:
这种情况,一般每组RadioButton中初始化时都有一个处于选中状态。
//提交信息 private void btnSubmit_Click(object sender, EventArgs e) { string str1 = rbtnMan.Checked?rbtnMan.Text:rbtnFemal.Text; string str2 = rbtnNomal.Checked?rbtnNomal.Text:rbtnFemal.Text; MessageBox.Show(str1 + ":" + str2); }
知识点4:
通过选择RadioButton获得不同的操作结果,如下:
方法:
这种情况,每个RadioButton初始化时都处于未选中状态。
//每个RadioButton都绑定一个CheckedChanged
private void rbtn1_CheckedChanged(object sender, EventArgs e) { if (rbtn1.Checked) { MessageBox.Show("system1"); } } private void rbtn2_CheckedChanged(object sender, EventArgs e) { if (rbtn2.Checked) { MessageBox.Show("system1"); } } private void rbtn3_CheckedChanged(object sender, EventArgs e) { if (rbtn3.Checked) { MessageBox.Show("system1"); } }
需要注意的是在AutoCheck=true的情况下,当由“系统1”切换到“系统2”时,会触发两次CheckChanged事件,首先是“系统1”触发CheckChanged事件,然后是“系统2”触发CheckChanged事件。
修改如下代码:
private void radioButton1_CheckedChanged_1(object sender, EventArgs e) { MessageBox.Show("radioButton1_CheckedChanged_1"); } private void radioButton2_CheckedChanged_1(object sender, EventArgs e) { MessageBox.Show("radioButton2_CheckedChanged_1"); } private void radioButton3_CheckedChanged_1(object sender, EventArgs e) { MessageBox.Show("radioButton3_CheckedChanged_1"); }
当由“系统1”切换到“系统2”时,先弹出对话框显示“radioButton1_CheckedChanged_1”,关闭后再弹出对话框“radioButton2_CheckedChanged_1”。
今天的文章RadioButton控件分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/55325.html