У меня есть шаблон tabitem (стиль по умолчанию), в котором фон элемента вкладки имеет фиксированный цвет.
<Style x:Key="tbitem" TargetType="{x:Type TabItem}">
<Setter Property="Focusable" Value="True"/>
<Setter Property="KeyboardNavigation.TabNavigation" Value="Continue"/>
<Setter Property="KeyboardNavigation.DirectionalNavigation" Value="Continue"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TabItem}">
<Border Name="Border" BorderBrush="Transparent" BorderThickness="0" CornerRadius="0" Margin="0" Background="Transparent" >
<DockPanel>
<Label x:Name="TabLabel" DockPanel.Dock="Left" Foreground="White" FontWeight="ExtraBold" FontFamily="Segoe UI" FontSize="14" >
<ContentPresenter HorizontalAlignment="Stretch" VerticalAlignment="Stretch" x:Name="ContentSite" RecognizesAccessKey="True" ContentSource="Header" />
</Label>
<Button Name="PART_BTNCLOSE" DockPanel.Dock="Right" Style="{StaticResource CloseButtonStyle}" Command="USD:ActionCommands.CloseSessionTab"/>
</DockPanel>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Panel.ZIndex" Value="100"/>
<Setter TargetName="Border" Property="BorderBrush" Value="Green"/>
<Setter TargetName="Border" Property="Background" Value="Green"/>
<Setter TargetName="Border" Property="Margin" Value="2,0,0,0"/>
<Setter TargetName="PART_BTNCLOSE" Property="Visibility" Value="{Binding CloseButtonVisibility}"/>
<Setter Property="KeyboardNavigation.TabNavigation" Value="Continue"/>
<Setter Property="KeyboardNavigation.DirectionalNavigation" Value="Continue"/>
</Trigger>
<Trigger Property="IsSelected" Value="False">
<Setter TargetName="TabLabel" Property="Foreground" Value="#666666"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
И мой фактический табит содержит текстовый блок для отображения заголовка вкладки
<TabItem Style="{StaticResource SessionTabs}" >
<TabItem.Header>
<TextBlock Text="Tab 1" >
</TextBlock>
</TabItem.Header>
</TabItem>
Пока все работает хорошо. Проблема заключается в том ... что иногда мне приходится менять один из цветов моей вкладки в зависимости от некоторых условий, и что если я делаю это с моим текстовым блоком, то внешний вид довольно странный.
Можно ли каким-либо образом установить фон границы моего родителя в соответствии с фоном моего текстового блока? или как-то вызвать / обновить фон предка от ребенка?