2012-07-02 7 views
0

Я не могу контролировать цвет фона выбранной вкладки. Однако я могу использовать триггер IsSelected для управления значением не выбранных вкладок.настройка TabItem IsSelected background

Этот код:

<Style TargetType="{x:Type TabItem}"> 
    <Setter Property="Background" Value="Black" /> 
    <Setter Property="Foreground" Value="#EE444444" /> 
    <Style.Triggers> 
     <Trigger Property="IsSelected" Value="false"> 
      <Setter Property="Background" Value="Pink"/> 
     </Trigger> 
    </Style.Triggers> 
</Style> 

работы в установке невыбранные вкладки фон в розовый цвет. Однако выбранные вкладки после некоторого светло-серого цвета я не могу избавиться.

Я также попытался это:

<Style TargetType="{x:Type TabItem}"> 
    <Setter Property="Background" Value="Black" /> 
    <Setter Property="Foreground" Value="#EE444444" /> 
    <Style.Triggers> 
     <Trigger Property="IsSelected" Value="false"> 
      <Setter Property="Background" Value="Pink"/> 
     </Trigger> 
     <Trigger Property="IsSelected" Value="true"> 
      <Setter Property="Background" Value="Red"/> 
     </Trigger> 
    </Style.Triggers> 
</Style> 

, но ни один из них не имеют никакого влияния на выбранной вкладке. Единственное, что я могу придумать, это то, что некоторые ссылочные сборки имеют общий стиль вкладки?

Этот стиль находится в том же файле, что и элемент управления вкладкой, в разделе Grid.Resources.

ответ

0

поведение выбора TabItem определяется на уровне шаблона. Если вы хотите изменить цвет, определите новый DataTemplate и определите триггеры в этом шаблоне для изменения цвета. Затем определите этот шаблон как ItemTemplate вашего TabControl.