资源字典样式不可用于UserControl

时间:2011-09-26 18:25:11

标签: wpf user-controls styles resourcedictionary

所以我创建了一个要使用的样式资源字典,并将其包含在我的UserControl中:

<UserControl.Resources>
    <ResourceDictionary Source="../affinityStyles.xaml" />
</UserControl.Resources>

这使得它可用于UserControl中的所有控件,但不能用于UserControl本身。我猜这是因为那些代码位于UserControl标记之后。

如何在UserControl后台使用资源字典定义的样式?

1 个答案:

答案 0 :(得分:4)

一种选择是使用DynamicResource而不是StaticResource;这将决议推迟到运行时间。

或者,您可以使用以下XAML属性语法并在合并ResourceDictionary之后放置它:

<UserControl.Background>
    <StaticResource ResourceKey="SomeResourceKey"/>
</UserControl.Background>