我有这段代码:
// code above
checkBox1.Checked = false;
checkBox2.Checked = false;
checkBox3.Checked = false;
checkBox4.Checked = false;
checkBox5.Checked = false;
checkBox6.Checked = false;
checkBox7.Checked = false;
checkBox8.Checked = false;
checkBox9.Checked = false;
//code below
我有320个复选框来设置清除/错误。
如何控制checkBox(变量)?
我想做以下事情:
for (int counter=1; counter<321; counter++)
{
checkBox***Put counter Variable Here***.Checked = false;
}
答案 0 :(得分:4)
如果所有复选框都是增量的,那么您可以使用Control.ControlCollection.Find方法。
for (int counter=1; counter<321; counter++)
{
var ctrl = this.Controls.Find("checkbox" + counter, true).FirstOrDefault() as CheckBox;
if (ctrl != null)
{
ctrl.Checked = false;
}
}
如果您只想设置每个复选框,请过滤Controls集合:
var checkBoxes = this.Controls.OfType<CheckBox>();
foreach (CheckBox cbx in checkBoxes)
{
cbx.Checked = false;
}
答案 1 :(得分:3)
您可以遍历表单上的所有控件并检查复选框。
foreach (Control ctrl in Controls)
{
if (ctrl is CheckBox)
{
((CheckBox)ctrl).Checked = false;
}
}
答案 2 :(得分:2)
void SetAllCheckBoxesState(Boolean isChecked) {
foreach(Control c in this.Controls) {
CheckBox cb = c as CheckBox;
if( cb != null ) cb.Checked = isChecked;
}
}