【问题标题】:C# Change all the buttons' background color at onceC#一次更改所有按钮的背景颜色
【发布时间】:2020-03-09 02:44:22
【问题描述】:

我有一个用于机场巴士的座位预订应用程序。我在文本框中输入乘客的姓名,然后单击其中一个按钮(座位),然后它的颜色从绿色变为红色,并显示以下消息:“座位已为‘输入的姓名’保留。”如果我没有在文本框中输入名称,则会显示以下消息:“请输入名称。” 我想做一个复活节彩蛋。如果我要输入一个特定的名称,它应该保留所有座位并立即将所有按钮的背景颜色更改为红色,但我编码失败。 提前致谢。

【问题讨论】:

  • 欢迎来到 Stack Overflow,也许您应该向我们展示失败的代码,以便我们指出问题所在
  • 我建议加强你的问题。答案取决于您的 UI 当前是如何实现的,正如@Steve 所提到的,分享您迄今为止尝试过的代码是一种很好的做法。

标签: c# button colors background


【解决方案1】:

对于 WinForms,你可以使用这个:

using System.Linq;
private void SetButtonsBackColorToRed()
{
  foreach ( var button in Controls.OfType<Button>() )
    button.BackColor = Color.Red;
}

这会获取Button类型形式的所有控件并解析结果列表以更改背景颜色。

另类

Controls.OfType<Button>().ToList().ForEach(button => button.BackColor = Color.Red);

【讨论】:

    猜你喜欢
    • 2011-06-26
    • 2015-06-04
    • 1970-01-01
    • 2021-02-15
    • 2018-08-17
    • 2021-06-22
    • 2015-04-03
    相关资源
    最近更新 更多