for (int i=1; i<4; i++)
{
string buttonName = "button" + i;
if (Controls[buttonName].BackColor = Color.Red)
{
Controls[buttonName].Enabled = false;
}
}
此代码完美无缺。代码检查3个不同的按钮(button1,button2,button3),如果它们的颜色为红色则会被禁用。使用字符串引用按钮名称:
Controls[buttonName]
有没有办法以相同的方式使用字符串引用ListBox?什么“控制”需要改为?
答案 0 :(得分:0)
如果您只想查看所有ListBox,也可以使用.OfType<T>()
foreach (ListBox lb in this.Controls.OfType<ListBox>())
{
lb.Enabled = false;
}
...当然.OfType<Button>()
的工作方式相同,而无需以枚举方式命名控件。