Я пытаюсь переопределить стиль по умолчанию базового элемента управления (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, у меня нет проблем, но я хочу, чтобы этот стиль зависел от темы.
Кстати, это хорошо работает с моими собственными пользовательскими контролями.
Может кто-нибудь сказать мне, что я здесь не так делаю?
Я знаю, что одним из решений может быть использование класса для просмотра темы, которую я использую, и использование триггера некоторого рода, но я действительно хотел сделать это в xaml.
Спасибо