Winform/C#入门编程之第二部分常用控件(五:单选框控件RadioButton)

本文深入讲解了RadioButton控件的使用,包括其基本属性如Name、Text、Checked等,以及关键事件如CheckedChanged。探讨了RadioButton如何实现单选功能,如何响应用户选择变化,并提供了实例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介:

           表示可以选择的按钮, RadioButton 的 Checked 属性可以通过单击它,设置,但只能清除以编程方式。通常将多个 RadioButton 控件组合在一起,以便让用户在多个选项中选择一个,一次只能选择一个按钮。

RadioButton 具有两个状态: true 或 false。RadioButton 是否已选择取决于其 Checked 属性的状态。

当是单个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.使用

  1. 一般更改属性Name,Text,使用事件CheckedChanged。当超过两个以上时,可以考虑把不同控件绑定相同的事件,在控件视图属性的CheckedChanged事件输入相同的绑定函数名。当然也可以分别使用不同的绑定函数名。
  2. 把要互斥的单选框控件放在同一个容器中,常用GroupBox。
单选框控件

 

单选框事件

 

4.原理

  1. 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.演示

  1. 获取选中状态。通过属性Checked判断状态。修改属性Tag或者Text来判断是哪个控件被选中。
  2. 更改显示样式。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);
            //}
        }

 

效果

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值