在C#语言中复选框(CheckBox)是与上一节RadioButton中介绍的单选按钮相对应的,用于选择多个选项的操作。

复选框主要的属性是:Name、Text、Checked,其中:

  • Name:表示这个组件的名称

  • Text:表示这个组件的标题

  • Checked:表示这个组件是否已经选中

<!--more-->

二 实例  完成选择用户爱好的操作,并在消息框中显示所选的爱好

2.1 要求

根据题目要求,用户爱好包括篮球、排球、羽毛球、乒乓球、游泳、阅读、写作,因此需要 7 个复选框

2.2 界面

2.3 点击"确认"代码逻辑

<span style="color:#333333">public partial class CheckBoxForm : Form
    public CheckBoxForm()
        InitializeComponent();
    //单击“确认”按钮,显示选择的爱好
    private void button1_Click(object sender, EventArgs e)
        string msg = "";
        if (checkBox1.Checked)
            msg = msg + " " + checkBox1.Text;
        if (checkBox2.Checked)
            msg = msg + " " + checkBox2.Text;
        if (checkBox3.Checked)
            msg = msg + " " + checkBox3.Text;
        if (checkBox4.Checked)
            msg = msg + " " + checkBox4.Text;
        if (checkBox5.Checked)
            msg = msg + " " + checkBox5.Text;
        if (checkBox6.Checked)
            msg = msg + " " + checkBox6.Text;
        if (checkBox7.Checked)
            msg = msg + " " + checkBox7.Text;
        if(msg != "")
            MessageBox.Show("您选择的爱好是:" + msg, "提示");
            MessageBox.Show("您没有选择爱好", "提示");
}</span>

2.4 效果图

2.5 总结

  • 与判断单选按钮是否被选中一样,判断复选框是否已被选中也使用Checked属性

  • 试想如果界面上的复选框有几十个或更多,每个复选框都需要判断,则会出现很多的冗余代码

  • 由于都要获取复选框是否已被选中了,界面上的每一个控件都继承自Control类,直接判断界面上的控件是否为复选框即可。实现上述功能的代码可以简化为如下:

    private void button1_Click(object sender, EventArgs e)
        string msg = "";
        foreach(Control c in Controls)
            //判断控件是否为复选框控件
            if(c is CheckBox)
                if (((CheckBox)c).Checked)
                    msg = msg + " " + ((CheckBox)c).Text;
        if(msg != "")
            MessageBox.Show("您选择的爱好是:" + msg, "提示");
            MessageBox.Show("您没有选择爱好", "提示");
        string msg = "";
        foreach(Control c in Controls)
            //判断控件是否为复选框控件
            if(c is CheckBox)
                if (((CheckBox)c).Checked)
                    msg = msg + " " + ((CheckBox)c).Text;
        if(msg != "")
            MessageBox.Show("您选择的爱好是:" + msg, "提示");
            MessageBox.Show("您没有选择爱好", "提示");
                        一 概述在C#语言中复选框(CheckBox)是与上一节RadioButton中介绍的单选按钮相对应的,用于选择多个选项的操作。 复选框主要的属性是:Name、Text、Checked,其中:	Name:表示这个组件的名称			Text:表示这个组件的标题			Checked:表示这个组件是否已经选中	&lt;!--more--&gt;二 实例 完成选择用户爱好的操作,并在消息框中显示所选的爱好2.1 要求根据题目要求,用户爱好包括篮球、排球、羽毛球、乒乓球、游..
    考虑到关键是动画效果,所以直接继承View。不过CheckBox的超类CompoundButton实现了Checkable接口,这一点值得借鉴。
    下面记录一下遇到的问题,并从源码的角度解决。
    问题一: 支持 wrap_content
    由于是直接继承自View,wrap_content需要进行特殊处理。
    View measure流程的MeasureSpec:
      * A MeasureSpec encapsulates the layout requirements passed from parent to child.
      * Each MeasureSp
    				
    C#里面,多选框组件是:CheckBox。跟单选框一样,也是比较常用的一个组件。 多选框主要的属性是:Name、Text、Checked。 Name属性表示这个组件的名称。Text属性表示这个组件的标题。Checked表示这个组件是否已经选中。 主要的事件就是CheckedChanged事件。 比如:选择一下个人的兴趣和爱好的多选。相关效果和代码如下所示: void CheckBox1
    1.RadioButton控件 单选按钮,当与其他单选按钮成对出现时,允许用户从一组选项中选择单个选项。也就是说,当同一个容器中(Form、Panel、GroupBox、PictureBox等)存在两个以上的单选按钮时,只能有一个被选中。但不在同一个容器中的几组单选按钮彼此不关联,是可以有多个被选中的。 2.CheckBox控件 复选框,允许用户选择和清除关联选项。与单选按钮不同 在这里插入代码片 this.CheckBox.Checked = true; //设置该控件状态为勾选上 this.CheckBox.Checked = false; //设置该控件状态为未选中 this.CheckBox.Chec 1.首先双击界面,设置循环往combobox设值,初始化下拉框内容 写入以下代码: private void Form1_Load(object sender, EventArgs e) for (int i = 0; i < 100; i++)
    如果你想在 C# PropertyGrid 中为 CheckBox 属性添加选项,你需要使用 [TypeConverter(typeof(BooleanConverter))] 特性来指定该属性的类型转换器。 然后,你可以为该属性定义一个枚举类型,该枚举类型将用于 CheckBox 的选项。你可以使用 [TypeConverter(typeof(EnumConverter))] 特性来指定该枚举类型的类型转换器。 例如,以下代码演示了如何在 C# PropertyGrid 中添加一个名为 "MyCheckBox" 的 CheckBox 属性,并为其添加两个选项 "Option1" 和 "Option2": public class MySettings [Browsable(true)] [Description("This is a checkbox property.")] [TypeConverter(typeof(BooleanConverter))] public bool MyCheckBox { get; set; } public enum MyCheckBoxOptions Option1, Option2 [Browsable(true)] [Description("Select an option for the checkbox.")] [TypeConverter(typeof(EnumConverter))] public MyCheckBoxOptions MyCheckBoxOption { get; set; } 现在,在创建 PropertyGrid 实例时,只需将其 SelectedObject 属性设置为 MySettings 对象,即可在属性网格中显示 MyCheckBox 属性和 MyCheckBoxOption 属性。当用户选中 MyCheckBox 属性时,可以在 MyCheckBoxOption 属性中选择一个选项。