覆盖WPF样式

时间:2010-09-01 13:29:58

标签: wpf styles

查看SharpDevelop源代码,我发现了这个按钮声明:

<Button Style="{x:Static core:GlobalStyles.ButtonStyle}"

Content="{core:Localize StartPage.StartMenu.NewCombineButton}" Click="newSolutionClick" Margin="8,0,0,0" />

我的问题是样式声明: Style =“{x:静态核心:GlobalStyles.ButtonStyle}”
它阻止我从外部应用自定义按钮样式
如果我删除样式声明,外部主题(存储在.xaml)文件就可以正常工作。

我的问题:有没有办法覆盖这些特定的样式声明?

非常感谢。
阿迪巴尔达

1 个答案:

答案 0 :(得分:2)

你可以尝试在你的风格中使用BasedOn ...我从来没有将它与x:静态一起使用,所以如果它起作用或语法我不是正面的,但是一个例子是这样的:

<Style x:Key="MyButtonStyle" TargetType="{x:Type Button}" 
       BasedOn={StaticResource core:GlobalStyles.ButtonStyle}">

<!-- Style Button here - If you define a Setter that already 
     exists in base style it will overwrite it -->

</Style>