0

我似乎无法控制所选选项卡的背景颜色。但是,我可以使用 IsSelected 触发器来控制未选择选项卡的值。

这段代码:

<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部分中。

4

1 回答 1

0

TabItem 选择行为在模板级别定义。如果要更改颜色,请定义一个全新的 DataTemplate,并在该模板中定义触发器以更改颜色。然后将该模板定义为 TabControl 的 ItemTemplate。

于 2012-07-02T20:40:06.427 回答