如何继承从一个资源字典/扩展样式?
-
26-09-2019 - |
题
我有延长我在Windows字典定义我的风格的一个麻烦。仅此一项,似乎风格应用到我的控制预期。但是,如果尝试在用户控件我的一个延长的风格,使用支持算法FMP财产,它只是覆盖了主要的一个,所有的基本样式dissapear。下面是一个例子:
在资源字典,命名dict1.xaml:
<Style TargetType="{x:Type Button}">
<Setter Property="Background" Value="Pink"/>
</Style>
在主window.xaml:
<Window.Resources>
<ResourceDictionary Source="dict1.xaml"/>
</Window.Resources>
在用户控件称为userControl1.xaml:
<UserControl.Resources>
<Style BasedOn="{StaticResource {x:Type Button}}"
TargetType="{x:Type Button}">
<Setter Property="FontWeight" Value="Bold"/>
</Style>
</UserControl.Resources>
在用户控制的样式简单地覆盖一个在资源字典和字体是粗体。如果我在用户控件删除样式,在字典中踢的风格和背景变成粉红色。我想这两者。
任何想法就是我在这里做错了吗?
感谢。
解决方案
您要么需要添加字典到该用户控件的资源,或者将其添加到App.xaml中的资源。
因为它是,该用户控件无法解析StaticResource的 - 它是在用户控件的范围,而不是窗口,如果是有道理的
不隶属于 StackOverflow