WPF 选项卡控件 : Setting Tab Color?

标签 wpf colors wpf-controls tabcontrol

我有一个 TabControl在我的 WPF 应用程序中,它使用 WPF 选项卡控件的默认颜色。换句话说,事件选项卡是白色的,非事件选项卡是银色的。我已经改了Background通过设置 Background,将所有标签页的颜色设置为米色TabControl 的属性(property)对象,但它不会更改选项卡颜色,只会更改客户区。所以,我最终得到了一个事件选项卡,它有一个米色的客户区和一个白色的选项卡。

我想设置标签 Color匹配客户区,使整个页面为米色。我该怎么做?谢谢。

最佳答案

这是我的一个项目中的选项卡项样式示例。抱歉一些不相关的代码,我相信你会从中提取你需要的东西。

<Style x:Uid="Style_21" TargetType="{x:Type TabItem}">
        <Setter x:Uid="Setter_75" Property="Template">
            <Setter.Value>
                <ControlTemplate x:Uid="ControlTemplate_7" TargetType="{x:Type TabItem}">
                    <Grid x:Uid="Grid_13">
                        <Border 
                             x:Uid="Border" Name="Border"
                             Background="#F0F0F0"
                             BorderBrush="LightGray" 
                             BorderThickness="1,1,1,0" 
                             CornerRadius="4,4,0,0" 
                             Margin="0,0,2,0" SnapsToDevicePixels="True" >
                            <TextBlock x:Uid="TextBlock" FontSize="15" 
                                       HorizontalAlignment="Center" 
                                       Name="TextBlock" 
                                       Foreground="DarkGray">
                            <ContentPresenter x:Uid="ContentSite" x:Name="ContentSite"
                                               VerticalAlignment="Center"
                                               HorizontalAlignment="Center"
                                               ContentSource="Header"
                                               Margin="12,2,12,2"/>
                            </TextBlock>
                        </Border>
                    </Grid>
                    <ControlTemplate.Triggers>
                        <Trigger x:Uid="Trigger_14" Property="IsSelected" Value="True">
                            <Setter x:Uid="Setter_76" TargetName="Border" Property="Background" Value="White" />
                            <Setter x:Uid="Setter_77" TargetName="Border" Property="BorderBrush" Value="Gray" />
                            <Setter x:Uid="Setter_78" TargetName="TextBlock" Property="Foreground" Value="Black" />
                            <Setter x:Uid="Setter_79" TargetName="Border" Property="Margin" Value="0,0,2,-1" />
                        </Trigger>
                        <Trigger x:Uid="Trigger_15" Property="IsMouseOver" Value="True" SourceName="Border" >
                            <Setter x:Uid="Setter_80" TargetName="Border" Property="Background" Value="White" />
                            <Setter x:Uid="Setter_81" TargetName="Border" Property="BorderBrush" Value="DarkGray" />
                        </Trigger>
                    </ControlTemplate.Triggers>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

希望能帮助到你。

关于WPF 选项卡控件 : Setting Tab Color?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2086728/

相关文章:

emacs - 将 hl-line 放在 Emacs 背景堆栈的最后

java - 以 LookAndFeel 风格绘制圆形按钮

c# - 3D 屏幕保护程序干扰 WPF 应用程序 (Windows XP)

wpf - 在 xaml 上设置 GroupStyle 内部样式

c# - 验证在运行时从 URI 加载的 WPF 位图图像

wpf - 控件完成绑定(bind)时调用的事件

java - 如何更改 writer.println 的颜色

c# - 在 WPF 中将 BackgroundWorker 与 ProgressBar 结合使用

c# - WPF如何动态绑定(bind)图像?

wpf - 在 WPF 中,我可以像在 Javascript/Jquery 中一样将相同的点击处理程序一次附加到多个按钮吗?