C# 为所有 CheckBox 添加事件

 C# 为 form 窗体中的所有相同组件循环添加相同事件,这样减少了代码量。

private void Form2_Load(object sender, EventArgs e)
        {
            foreach (Control c in groupBox1.Controls)//遍历groupBox1内的所有控件
            {
                if (c is CheckBox)//只遍历CheckBox控件
                {
                    ((CheckBox)c).CheckStateChanged += new EventHandler(chk_CheckedChanged);
                }
            }
 
        }
 
        private void chk_CheckedChanged(object sender, EventArgs e)
        {
            if (((CheckBox)sender).CheckState.ToString() == "Checked")
            {
                listBox1.Items.Add(((CheckBox)sender).Text);
            }
            else
            {
                listBox1.Items.Remove(((CheckBox)sender).Text);
            }
        }
原文地址:https://www.cnblogs.com/wjw1014/p/10775949.html