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); } }