【发布时间】:2013-01-05 18:00:17
【问题描述】:
我正在处理一个有很多按钮的表单。当用户单击一个按钮时,背景应该会改变颜色。如果他们点击表单上的另一个按钮,它的背景应该会改变颜色,而之前的按钮颜色应该会恢复到原来的颜色。
我可以通过在每个按钮中硬编码来做到这一点,但是这个表单有很多按钮。我确信必须有一种更有效的方法来做到这一点
目前为止有这个
foreach (Control c in this.Controls)
{
if (c is Button)
{
if (c.Text.Equals("Button 2"))
{
Btn2.BackColor = Color.GreenYellow;
}
else
{
}
}
}
我可以让 Btn2 改变背景。我将如何更改表单中所有其他按钮的背景。任何想法我可以如何做到这一点而不必对每个按钮进行硬编码。
【问题讨论】:
-
你在 else 中尝试过 c.BackColor 吗?
标签: c# winforms buttonclick