c# - C#设置所有对象的背景色

标签 c# background-color

有没有一种简单的方法可以设置窗体上所有对象的背景颜色?当一切都在运行时,我试图通过点击事件来做到这一点。所以会有不止一个按钮。我想避免的是:

changeColor_Click
{
  label1.BackColor = Color.Black;
  label2.BackColor = Color.Black;
  label3.BackColor = Color.Black;
  etc...
}

我在找什么:

changeColor_Click
{
 all.BackColor = Color.Black;
}

请记住,每个标签都是不同颜色的背景,以在 GUI 上启动:

标签 1 = 蓝色

标签 2 = 红色

label3 = 黄色

我有很多不同的对象,正在尝试找到一种在主题之间切换的好方法。关于如何实现这一点有什么建议吗?

最佳答案

你必须使用 Recursion .

请原谅我糟糕的 C#,好多年没用过它了,你懂的……

ChangeColor_Click
{
   ChangeAllBG(this);
}

void ChangeAllBG(Control c)
{
    c.BackColor=Color.Teal;
    foreach (Control ctl in c.Controls)
        ChangeAllBG(ctl);
}

关于c# - C#设置所有对象的背景色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3670765/

相关文章:

c# - 在没有设计器的情况下显示 DevExpress waitform 对话框

c# - 使用 C# 打印文件 Excel

c# - 使用 Html Helper 创建

emacs - 如何获取emacs背景颜色

javascript - 改变事件页面的颜色(分页)

c# - SQL连接到数据库重复

c# - 是否可以从移动和桌面应用程序访问同一个 Firestore 集合?

android - 使用 Vuetify PWA 模板时如何更改 Android 状态栏颜色

css - 在现有形状周围添加带有背景颜色的更大形状

html - 带背景颜色的多行标题文本的宽度