我试图做这样的事情:
list<int> listName = new list<int>();
for(int i; i <= listName[0];i++)
{
button(i).Enabled = false;
}
...禁用从1到i的所有按钮。 这样做的最佳方式是什么?
感谢。
答案 0 :(得分:2)
有几种方法可以批量修改控件。
示例1(将它们全部放入列表中)
List<Button> buttonsToDisable = new List<Button>()
{
button1,
button2
};
foreach (var button in buttonsToDisable)
{
button.Enabled = false;
}
示例2(将它们放在同一个容器中,然后迭代该容器中的控件)
foreach(var button in groupBox1.Controls.OfType<Button>())
{
button.Enabled = false;
}
示例3(使用ID修改控件)
List<int> buttonSubfixId = new List<int>()
{
1,
2
};
foreach (var id in buttonSubfixId)
{
var controls = this.Controls.Find("button" + id.ToString(), true).OfType<Button>();
if (controls.Count()>0)
{
foreach (var button in controls)
{
button.Enabled = false;
}
}
}