【问题标题】:How to set a label to the default color globally?如何将标签全局设置为默认颜色?
【发布时间】:2014-01-29 17:06:28
【问题描述】:

C# -> Windows 窗体

过去我设置为描述符:

Color gcolorBackDialogBox;
Color gcolorForeDialogBox;

在 dlg_Load() 下,我将它们定义为:

gcolorBackDialogBox = this.BackColor;
gcolorForeDialogBox = this.ForeColor;

在一个函数下,我将它们用作:

gLBlStatus.BackColor = gcolorBackDialogBox;
gLBlStatus.ForeColor = gcolorForeDialogBox;

其中 gLBlStatus 是对话框上标签的名称。这会将标签设置为与对话框相同的颜色。

我正在转换为 C# -> WPF。我可以更改标签:

gLBlStatus.Background = Brushes.LightGray;
gLBlStatus.Foreground = Brushes.Black;

但找不到复制全局方面的方法。

我发现默认对话框颜色是 SystemColors.ControlBrushKey ...我无法找到使此命名法起作用的方法。

【问题讨论】:

  • 如果您正在重写您的 WinForms 应用程序,我建议您使用不同的技术来获得相同的结果。如果您希望所有标签具有相同的颜色,您可以使用样式来实现。您甚至可以在 app.xaml 文件中创建一个全局样式,该样式将应用于您的应用程序中的所有窗口。

标签: c# wpf colors set label


【解决方案1】:

你不能创建一个SolidColorBrush 全局实例吗,

SolidColorBrush gcolorBackDialogBox = new SolidColorBrush(color);
SolidColorBrush gcolorForeDialogBox = new SolidColorBrush(color);

还有其他类继承自Brush,用于不同风格的颜色。

【讨论】:

  • 我尝试了你的建议......我应该为“颜色”输入什么?我尝试使用“Brushes.Blue”......它不喜欢那样。
  • 查看文档:它需要一个Color 类实例。
猜你喜欢
  • 1970-01-01
  • 2023-04-11
  • 2016-04-28
  • 1970-01-01
  • 1970-01-01
  • 2015-06-24
  • 2020-02-08
  • 1970-01-01
  • 2013-10-26
相关资源
最近更新 更多