我正在尝试更改WPF应用程序中选项卡的默认背景颜色,以使它们对用户更可见。
在我们的选项卡中,我们具有包含描述性图像和文本的网格,以定义选项卡中的信息类型。我试图创建一个带有一些实际颜色的模板,以进行测试,以使其非常可见。现在,它们看起来像这样:Image of tabs with ugly borders
这是我现在使用的样式定义,基于我发现的另一篇StackOverflow帖子:
<Style TargetType="{x:Type TabItem}">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Padding" Value="0" />
<Setter Property="HeaderTemplate">
<Setter.Value>
<DataTemplate>
<Border x:Name="grid" Background="Red">
<ContentPresenter Content="{TemplateBinding Content}" />
</Border>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type TabItem}},Path=IsSelected}" Value="True">
<Setter TargetName="grid" Property="Background" Value="Green"/>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
这是表项中定义的标题的示例:
<TabItem.Header>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="25" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Image HorizontalAlignment="Left" VerticalAlignment="Center" Height="25" Width="25" Source="{converters:FontToImage Text=, FontFamily=../../Resources/Fonts/#FontAwesome}" />
<TextBlock Margin="5,0,0,0" VerticalAlignment="Center" FontWeight="Bold" FontFamily="Arial" FontSize="12" Foreground="Black" Grid.Column="1">
<AccessText Text="Record Info"/>
</TextBlock>
</Grid>
</TabItem.Header>
我只是想弄清楚如何用样式中定义的颜色填充整个标题。