gpt4 book ai didi

wpf - Color 和 SolidColorBrush 的区别澄清

转载 作者:行者123 更新时间:2023-12-01 02:19:32 26 4
gpt4 key购买 nike

好吧,这一直困扰着我,我还没有真正找到任何明确的答案作为 Color 之间差异的原因/原因。 & SolidColorBrush所以我想知道是否有人可以教育我。

我已经知道用法上的差异,例如我可以使用 SolidColorBrush像我说的那样依赖;

<SolidColorBrush x:Key="BlahBrush" Color="#FFFFFFFF"/>
<Border Background="{StaticResource BlahBrush}"/>

但是然后说我把相同的资源扔进了 EasingColorKeyFrame就像;
<EasingColorKeyFrame KeyTime="0" Value="{StaticResource BlahBrush}" />

然后它会因为它是一个 SolidColorBrush 而吐槽我......除此之外我可以通过资源链将它声明回 Color 来解决这个问题。就像;
<Color x:Key="OriginalBlahBrush">#FFFFFFFF</Color>
<SolidColorBrush x:Key="BlahBrush" Color="{StaticResource OriginalBlahBrush}"/>

它会很好....但是我可以再次使用 Color SolidColorBrush 的唯一属性(property)并且可以在不分离的情况下获得相同的行为;
<SolidColorBrush>
<SolidColorBrush.Color>
<Color A="255" R="0" G="0" B="255" />
</SolidColorBrush.Color>
</SolidColorBrush>

所以我想我的问题是,Colors 和 SolidColorBrush 类之间的内在区别是什么,以及它们在使用中的奇怪怪癖的原因是什么?又名,我猜 System.Windows.Media.Colors 与 System.Windows.Media.SolidColorBrush 的原因是什么,如果它们都只是给出一个该死的纯色?

好奇心想知道! :)

最佳答案

来自 Brush 中的备注部分:

A Brush "paints" or "fills" an area with its output. Different brushes have different types of output. Some brushes paint an area with a solid color, others with a gradient, pattern, image, or drawing. The following list describes the different types of WPF brushes:

•SolidColorBrush: Paints an area with a solid Color.

•LinearGradientBrush: Paints an area with a linear gradient.

•RadialGradientBrush: Paints an area with a radial gradient.

•ImageBrush: Paints an area with an image (represented by an ImageSource object).

•DrawingBrush: Paints an area with a Drawing. The drawing may include vector and bitmap objects.

•VisualBrush: Paints an area with a Visual object. A VisualBrush enables you to duplicate content from one portion of your application into another area; it's very useful for creating reflection effects and magnifying portions of the screen.

关于wpf - Color 和 SolidColorBrush 的区别澄清,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21467296/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com