如何在C# WPF中将十六进制代码添加到画笔?

3

我使用这段代码来改变我的背景 t1.Background = Brushes.White; 它可以工作,但是如何使用十六进制颜色代码呢?因为t1.Background = Brushes.#FF2463AE;无法工作。我正在使用Visual Studio 2015。谢谢。

3个回答

10

使用 BrushConverter

t1.Background = (Brush)(new BrushConverter().ConvertFrom("#FF2463AE"));

如果你需要进行多次转换,那么最好创建一个转换器的单一实例。


3
你可以尝试这样做:
SolidColorBrush color = (SolidColorBrush)(new BrushConverter().ConvertFrom("#ffaacc"));
t1.Background = color;

2
t1.Background = new SolidColorBrush(Color.FromArgb(0xFF, 0x24, 0x63, 0xAE));

如果您要多次使用相同的颜色,请保存画笔:

Brush myBrush = new SolidColorBrush(Color.FromArgb(0xFF, 0x24, 0x63, 0xAE));
t1.Background = myBrush;

我喜欢创建可重复使用的画笔的想法,但是基于十六进制的 FromArgb 参数值对于现代颜色值工具来说似乎过于复杂了。 - pstricker

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接