WPF从笔刷资源获取笔刷颜色

WPF从笔刷资源获取笔刷颜色,wpf,xaml,resourcedictionary,staticresource,dynamicresource,Wpf,Xaml,Resourcedictionary,Staticresource,Dynamicresource,我需要从画笔中动态获取颜色。 所以,我有一把刷子: <SolidColorBrush x:Key="ExampleBrush" Color="Black" /> 因此,可以获得颜色(例如,对于另一个笔刷): 因此,我的问题是如何才能为动态资源获取此信息? 因为如果我用ExampleBrush-另一个笔刷的颜色更改资源文件,则不会更改 请随时提问。谢谢您不能使用DynamicResource将另一个笔刷的Color属性设置为示例笔刷的Color。解决方法是使用DynamicR

我需要从画笔中动态获取颜色。
所以,我有一把刷子:

<SolidColorBrush x:Key="ExampleBrush" Color="Black" />

因此,可以获得颜色(例如,对于另一个笔刷):


因此,我的问题是如何才能为动态资源获取此信息?
因为如果我用
ExampleBrush
-另一个笔刷的
颜色更改资源文件,则不会更改


请随时提问。谢谢

您不能使用
DynamicResource
将另一个笔刷的
Color
属性设置为示例笔刷的
Color
。解决方法是使用
DynamicResource
直接引用ExampleBrush并绕过另一个笔刷:

<TextBlock Text="..." Foreground="{DynamicResource AnotherBrush}" />

什么不起作用?如果您的代码不起作用,那么您需要发布一个示例,说明如果您希望有人能够帮助您,您正在尝试做什么……当然,使用DynamicSource是有效的。您确定吗?(例如,请检查资源是否已更改)如果我错了,请纠正我。请提供问题的完整可复制代码示例。如果您用另一个笔刷替换“AnotherResource”,我的示例标记中的文本块应该更新。您可以从onedrive下载测试项目,这对您有好处吗?你应该再读一遍我的答案。不要在AnotherBrushBorderStyle中使用另一个笔刷,因为这不起作用。改用ExampleBrush并去掉另一个笔刷:
<TextBlock Text="..." Foreground="{DynamicResource AnotherBrush}" />
<TextBlock Text="..." Foreground="{DynamicResource AnotherBrush}" />