在c#中使用WinApp表单,这里有很多按钮......
我想创建一个条件,如果按钮中有文本,那么该按钮的背景颜色会发生变化。这听起来很容易。但我所拥有的是一组通用的按钮,其中的文本依赖于XML文档中的值。
示例:第1周 - 按钮1,3和5中包含文本。第2周 - 按钮2和3有文字。
如何设置单独条件以检查按钮中是否包含文本,然后如果按钮中有文本值则更改颜色。
谢谢。
答案 0 :(得分:2)
我会扩展按钮并覆盖标签设置器,以便在将标签内容设置为某个非空值时也会更改颜色。
答案 1 :(得分:1)
你想要这样的东西吗?
foreach (var btn in this.Controls.OfType<Button>()) {
btn.BackColor = (string.IsNullOrEmpty(btn.Text))
? SystemColors.ButtonFace : Color.AliceBlue;
}
我会把它放在一个方法中,并在表单加载时调用它,或者在按钮的文本发生变化时调用它。