Chr*_* W. 6 silverlight wpf graphics xaml colors
好吧,这一直困扰着我,我还没有真正找到任何明确的答案作为Color&之间差异的原因/原因,SolidColorBrush所以我想知道是否有人可以就此教育我。
我已经知道用法的差异,例如我可以SolidColorBrush在依赖项中使用 a就像我说的那样;
<SolidColorBrush x:Key="BlahBrush" Color="#FFFFFFFF"/>
<Border Background="{StaticResource BlahBrush}"/>
Run Code Online (Sandbox Code Playgroud)
但是然后说我以EasingColorKeyFrame某种方式抛出相同的资源;
<EasingColorKeyFrame KeyTime="0" Value="{StaticResource BlahBrush}" />
Run Code Online (Sandbox Code Playgroud)
然后它会因为它是一个 SolidColorBrush 而吐槽我......除非我可以通过资源链将它声明回Color类似的东西来解决这个问题;
<Color x:Key="OriginalBlahBrush">#FFFFFFFF</Color>
<SolidColorBrush x:Key="BlahBrush" Color="{StaticResource OriginalBlahBrush}"/>
Run Code Online (Sandbox Code Playgroud)
它会很好....但是我又可以Color单独使用 的属性SolidColorBrush并且可以获得相同的行为而不会被分开,就像;
<SolidColorBrush>
<SolidColorBrush.Color>
<Color A="255" R="0" G="0" B="255" />
</SolidColorBrush.Color>
</SolidColorBrush>
Run Code Online (Sandbox Code Playgroud)
所以我想我的问题是,Colors 和 SolidColorBrush 类之间的内在区别是什么,以及它们在使用中奇怪的怪癖的原因是什么?又名我猜 System.Windows.Media.Colors 与 System.Windows.Media.SolidColorBrush 的原因是什么,如果它们都只是给出了一个该死的纯色?
好奇心想知道!:)
从Brush的备注部分:
Brush 用它的输出“绘制”或“填充”一个区域。不同的画笔有不同类型的输出。一些画笔使用纯色绘制区域,其他画笔使用渐变、图案、图像或绘图。以下列表描述了不同类型的 WPF 画笔:
• SolidColorBrush:用纯色绘制区域。
•LinearGradientBrush:使用线性渐变绘制区域。
•RadialGradientBrush:使用径向渐变绘制区域。
•ImageBrush:用图像(由ImageSource 对象表示)绘制区域。
•DrawingBrush:用绘图绘制一个区域。绘图可以包括矢量和位图对象。
•VisualBrush:用Visual 对象绘制一个区域。VisualBrush 使您能够将应用程序的一个部分的内容复制到另一个区域;它对于创建反射效果和放大屏幕部分非常有用。
| 归档时间: |
|
| 查看次数: |
3637 次 |
| 最近记录: |