我试图覆盖主题文件中基本控件(TextBox,ComboBox)的默认样式。 像这样:如何覆盖特定主题的样式
在主题/classic.xaml
<Style TargetType="{x:Type TextBox}" BasedOn="{StaticResource {x:Type TextBox}}">
<Setter Property="Background" Value="Black"/>
</Style>
在主题
/Aero.NormalColor.xaml
<Style TargetType="{x:Type TextBox}" BasedOn="{StaticResource {x:Type TextBox}}">
<Setter Property="Background" Value="Green"/>
</Style>
但这似乎并没有工作。我总是得到默认的风格,没有任何变化。我甚至与特定键 试过像
<Style x:Key="DefaultTextBoxStyle" TargetType="{x:Type TextBox}" BasedOn="{StaticResource {x:Type TextBox}}">
<Setter Property="Background" Value="Green"/>
</Style>
,并宣布在XAML控制时一直使用此键。似乎没有任何工作。
如果我把样式放在application.xaml文件中,我没有问题,但我希望这种样式是主题相关的。顺便说一句,它适合我自己的usercontrols。
有人能告诉我我在做什么错吗?
我知道一种解决方案可能是使用一个类来查看我使用的极其主题,并使用somesort的触发器,但我真的想在xaml中执行此操作。
谢谢
您能否包含app.xaml的代码? – bendewey 2011-01-11 20:10:13