C#按钮文本条件

时间:2009-11-20 00:49:40

标签: c# xml button

在c#中使用WinApp表单,这里有很多按钮......

我想创建一个条件,如果按钮中有文本,那么该按钮的背景颜色会发生变化。这听起来很容易。但我所拥有的是一组通用的按钮,其中的文本依赖于XML文档中的值。

示例:第1周 - 按钮1,3和5中包含文本。第2周 - 按钮2和3有文字。

如何设置单独条件以检查按钮中是否包含文本,然后如果按钮中有文本值则更改颜色。

谢谢。

2 个答案:

答案 0 :(得分:2)

我会扩展按钮并覆盖标签设置器,以便在将标签内容设置为某个非空值时也会更改颜色。

答案 1 :(得分:1)

你想要这样的东西吗?

foreach (var btn in this.Controls.OfType<Button>()) {
  btn.BackColor = (string.IsNullOrEmpty(btn.Text)) 
                ? SystemColors.ButtonFace : Color.AliceBlue;
}

我会把它放在一个方法中,并在表单加载时调用它,或者在按钮的文本发生变化时调用它。