覆盖Mahapps Metro风格为我标题Tabitem

Cam*_*Dev 5 c# wpf xaml mvvm mahapps.metro

我正在使用WPF和MVVM.我安装了Mahapps Metro,这个nuget包为我的应用程序提供了所有样式.

我做了一个TabControl,但Mahapps用于每个TabItem中的标题的FontSize对我的应用来说非常大.

我需要创建一个StaticResource来更改TabItem中标题的FontSize,而不删除Mahapps提供的其他属性.

DR.*_*DR. 13

将以下代码放在窗口的资源中:

<Window
......
xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
......
>
<Window.Resources>
        <Style x:Key="MenuLevel2" BasedOn="{StaticResource MetroTabItem}" TargetType="{x:Type TabItem}">
            <Setter Property="mah:ControlsHelper.HeaderFontSize" Value="24"></Setter>
        </Style>
<Window.Resources>
Run Code Online (Sandbox Code Playgroud)

查看源代码[ https://github.com/MahApps/MahApps.Metro/blob/master/MahApps.Metro/Styles/Controls.TabControl.xaml,第158行],您可以看到程序员做了一个特殊的例外设置此属性,因为该字体位于Content Presenter内的控件模板中.设置ControlsHelper.HeaderFontSize属性更容易.