从Color转换为brush

kar*_*tal 102 c# wpf

如何在C#中将Colora 转换为a Brush

Mua*_*Dib 130

这是ColorBrush....

你不能转换它,你必须刷新....

SolidColorBrush brush = new SolidColorBrush( myColor );
Run Code Online (Sandbox Code Playgroud)

现在,如果你在XAML中需要它,你可以创建一个自定义值转换器并在绑定中使用它

  • 为了向后兼容,最好使用从.NET Framework 1.1开始提供的`SolidBrush`(`System.Drawing`),而不是从.NET开始的`SolidColorBrush`(`System.Windows.Media`).框架3.0. (5认同)

H.B*_*.B. 34

Brush brush = new SolidColorBrush(color);
Run Code Online (Sandbox Code Playgroud)

另一种方式:

if (brush is SolidColorBrush colorBrush)
    Color color = colorBrush.Color;
Run Code Online (Sandbox Code Playgroud)

或类似的东西.

点并非所有画笔都是颜色,但您可以将所有颜色转换为(SolidColor)画笔.


Tru*_*f42 24

SolidColorBrush brush = new SolidColorBrush( Color.FromArgb(255,255,139,0) )
Run Code Online (Sandbox Code Playgroud)


Omi*_*-RH 16

你可以用这个:

new SolidBrush(color)
Run Code Online (Sandbox Code Playgroud)

颜色是这样的:

Color.Red
Run Code Online (Sandbox Code Playgroud)

要么

Color.FromArgb(36,97,121))
Run Code Online (Sandbox Code Playgroud)

要么 ...

  • 为了向后兼容,这个答案更好,因为从.NET Framework 1.1开始提供`SolidBrush`(`System.Drawing`),而从.NET Framework 3.0开始提供'SolidColorBrush`(System.Windows.Media`)。 (2认同)