У меня возникли проблемы с наследованием от стиля по умолчанию в ItemContainerStyle TabControl.WPF: как наследовать от базового (или стандартного) стиля в ItemContainerStyle
Цель наследования стиля темы и изменение только нескольких свойств.
Если я пишу этот код XAML, используется стиль TabItem по умолчанию, но не темой. У вас есть идеи, почему?
<TabControl>
<TabControl.Resources>
<Style TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
<Setter Property="Background" Value="DarkBlue"/>
</Style>
</TabControl.Resources>
<TabControl.ItemContainerStyle>
<Style TargetType="TabItem" BasedOn="{StaticResource {x:Type TabItem}}">
<Setter Property="Background" Value="Blue"/>
<Setter Property="Foreground" Value="Red"/>
</Style>
</TabControl.ItemContainerStyle>
<TabItem Header="Tab 1"/>
<TabItem Header="Tab 2"/>
<TabItem Header="Tab 3"/>
<TabItem Header="Tab 4"/>
</TabControl>
PS: Выполнение того же для кнопки, в ресурсах, отлично работает. Почему это не с стилем TabItem? Что-то связанное с ItemContainerStyle?
PS2: Мой стиль темы (стиль по умолчанию) хранится в ресурсах приложения.
Благодаря
EDIT 1
Вы можете найти пример проекта на моем Dropbox: https://dl.dropboxusercontent.com/u/61987557/InheritDefaultStyle.zip
Я попробовал этот код и, кажется, работает. Как кнопка, так и вкладка взяли базовый стиль из App.xaml. Есть ли какая-то другая конкретная проблема, с которой вы сталкиваетесь? – Jawahar
Здравствуйте, XAML Lover, я попытался поместить только этот код в приложение, причем мой стиль по умолчанию для TabItem напрямую включен в App.xaml, но он все еще не работает. Я вышлю вам источник –