solidcolorbrush和brush之间的区别是什么,在WPF(C#)中。
SolidColorBrush br = new SolidColorBrush(Colors.Red);
和
Brush br = Brushes.Red;
答案 0 :(得分:7)
回答你的问题没有区别。
Brushes.Red
仅返回SolidColorBrush
。它的定义如下:
public static SolidColorBrush Red { get; }
您可以假设Microsoft为您提供基本颜色的默认模板。
如果您想为颜色提供自己的自定义A,R,G,B 值,请使用SolidColorBrush构造函数。
这将为您提供实际的Red
颜色:
SolidColorBrush anotherBrush =
new SolidColorBrush(Color.FromArgb(255, 255, 0, 0));
这会让您感到红色,G
组件设置为100 byte
,B
组件设置为50 byte
。
SolidColorBrush anotherBrush =
new SolidColorBrush(Color.FromArgb(255, 255, 100, 50));
答案 1 :(得分:3)
无。
MSDN说:
public static SolidColorBrush Red { get; }
所以实际上这是一个静态的SolidColorBrush。使用第一行代码创建一个类似的对象。
答案 2 :(得分:1)
Brush是基类,无论它是如何创建的,它都包含任何类型的画笔。 SolidColorBrush构造一个具有纯色的画笔,LinearGradientBrush是另一种构造画笔的方法,而且还有更多。 WPF在Brushes类中提供了大量预定义画笔。它们是SolidColorBrush类型,只是为了说:单一的纯色。