我之前已经问过这个问题但是对于VB.NET:
Accessing buttons names using variables
现在我想在C#和CheckBoxes中做同样的事情,例如,如果我有31个标有&#34的复选框; CheckBox1 ... CheckBox31"我能做到:
for (int i = 0; i < 10; i++)
{
(CheckBox + i).Enabled = false;
}
感谢您的任何建议。
答案 0 :(得分:1)
尝试以下
for (int i = 0; i < 10; i++)
{
((CheckBox)this.Controls[$"CheckBox{i}"]).Enabled = false;
}
答案 1 :(得分:0)
您可以尝试创建List<CheckBox>
或所有复选框的数组:
for (int i = 0; i < checkbox_array.Length; i++) {
checkbox_array[i].Enabled = false;
}
编辑:我可能会有点迟到,但如果你把所有CheckBoxes
放在GroupBox
中(如果你有 soo,我真的建议这样做/ em>许多复选框),您可以循环播放该组框中的所有控件,如下所示:
foreach (CheckBox cbx in gbxCheckBoxes.Controls) {
cbx.Enabled = true;
}
或者像这样:(如果你只需要启用它们)
gbxCheckBoxes.Enabled = false;
(gbxCheckBoxes
是我正在谈论的GroupBox