我正在编写一个 WPF 应用程序,并尝试设置 TabItem 标头的样式,仅在选择时显示背景颜色更改的边框。问题是,当我添加该样式时,它会弄乱 TabItem 中 TextBlock 项目的样式。我不是 WPF / XAML 专家。下面是我在 TabControl 中使用的样式。我也在使用 MahApps 地铁样式。任何想法,将不胜感激。
<TabControl.Resources>
<Style TargetType="TabItem">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TabItem">
<Border Name="Border" BorderThickness="1,1,1,0" BorderBrush="Gainsboro" CornerRadius="4,4,0,0" Margin="2,0">
<ContentPresenter x:Name="ContentSite"
VerticalAlignment="Center"
HorizontalAlignment="Center"
ContentSource="Header"
Margin="10,2"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter TargetName="Border" Property="Background" Value="{DynamicResource AccentColorBrush}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</TabControl.Resources>
当您为 WPF 控件编写新样式时,如果您没有完全重新设计所有内容,最好让它继承现有的隐式样式。那里可能还有很多你不想丢失的其他东西,看起来就是这样。尝试设置BasedOn
像这样的属性,隐式TabItem
style:
<Style TargetType="TabItem" BasedOn="{StaticResource {x:Type TabItem}}">
看看是否有帮助。
在 WPF 中,.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)