是否可以直接引用资源字典中另一个笔刷的值,而不使用颜色定义(或者更准确地说,将一个笔刷资源复制到另一个笔刷资源中)?
例如,我有一个笔刷定义:
<SolidColorBrush x:Key="PanelBackgroundBrush" Color="White"/>
我还有其他几个笔刷,我想和"PanelBackgroundBrush“完全一样,大概是这样的:
<SolidColorBrush x:Key="FolderColor" [BrushToCopy]="{StaticResource PanelBackgroundBrush}"/>
因此"PanelBackgroundBrush“和"FolderColor”都使用白色。
我知道这可以通过使用通用的颜色定义来实现。
发布于 2010-10-26 01:27:00
我不知道复制画笔本身的方法,但正如您所说的,您可以复制画笔的属性:
<SolidColorBrush x:Key="FolderColor" Color="{Binding Color, Source={StaticResource PanelBackgroundBrush}}"/>
上面的内容应该有相同的效果。
发布于 2010-10-26 02:03:05
你可以这样做:
<Color x:Key="colorCommon">Red</Color>
<SolidColorBrush x:Key="scb1" Color="{StaticResource colorCommon}" />
<SolidColorBrush x:Key="scb2" Color="{StaticResource colorCommon}" />
(请注意,您可以在Color中指定常规的Color属性)。
但是,如果您只是对多个SolidColorBrush对象使用相同的颜色,我想我会问您为什么要这样做,除非这是为了将来的灵活性。否则,你只会给自己制造额外的工作和可读性问题。
https://stackoverflow.com/questions/4016230
复制相似问题