将颜色名称转换为SolidColorBrush
本文关键字:SolidColorBrush 转换 颜色 | 更新日期: 2023-09-27 18:24:21
如何将颜色名称转换为SolidColorBrush
类型?我指的是"黄色"这个词。
SolidColorBrush scb = ??? ; // "Yellow"
谢谢!
要获取颜色,请使用:
Color col=(Color)ColorConverter.ConvertFromString("Red");
然后创建你的画笔:
Brush brush=new SolidColorBrush(col);
或者您是否可以使用Colors枚举
Brush brush=new SolidColorBrush(Colors.Red);
如果你已经知道颜色的名称,你可以直接从Brushes
:获得画笔
SolidColorBrush scb = Brushes.Yellow; //scb seems a bit redundant at this point...
在代码中,您通常应该而不是使用转换器,除非您有一个不知道其值的字符串。
您不能将一个强制转换为另一个。它们只是不同的概念。画笔就是画笔,颜色就是一种颜色。仅仅因为画笔"绘制"了一种特定的颜色,并不意味着你可以将一种颜色与另一种颜色互换。
但是,您可以创建具有特定颜色的SolidColorBrush,例如:
var brush = new SolidColorBrush(Color.Yellow);
// Yellow is green + red
SolidColorBrush yellowBrush = new SolidColorBrush(System.Windows.Media.Color.FromRgb(255, 255, 0));