MahApps.MetroTabItem
template使用動態資源與"GrayNormalBrush"
鍵時,它的不活動的字體顏色。所以你所需要做的就是提供一個你喜歡的Brush
作爲這個關鍵的資源。根據變化的範圍,你想讓你必須選擇一個合適的地方來放置你的畫筆。
改變單一TabItem
要更改無效刷上一個TabItem
,把刷子在其資源詞典:
<TabItem>
<TabItem.Resource>
<SolidColorBrush x:Key="GrayNormalBrush" Color="Red" />
</TabItem.Resources>
</TabItem>
改變中的單個TabControl
所有
TabItem
小號
修改所有TabItem
s TabControl
應覆蓋TabItem
的默認樣式,把刷子在其資源字典,並把這種風格爲TabControl
的資源:
<TabControl>
<TabControl.Resources>
<!-- It's important to set the BasedOn property so that we
override the style rather than redefine it -->
<Style TargetType="{x:Type TabItem}" BasedOn="{StaticResource {x:Type TabItem}}">
<Style.Resources>
<SolidColorBrush x:Key="GrayNormalBrush" Color="Red" />
</Style.Resources>
</Style>
</TabControl.Resources>
</TabControl>
你也可以移動的風格了層次結構,以擴大其範圍,例如如果您將該樣式作爲Window
的資源,則該窗口內的所有TabItem
將被修改。
在整個應用程序
這部分更改所有TabItem
經證實比只是把這種風格在App.xaml中資源字典麻煩一點。關鍵是這個樣式應該被定義爲MahApps.Metro一個被引用。就我而言,我在有MahApps.Metro字典引用的App.xaml和也把這種風格在那裏,第一TabItem
完全沒有風格,而下述的人罰款和花花公子。
訣竅是創建一個單獨的文件一本字典,說Resources.xaml,把這種風格出現,並參考來自App.xaml中字典。請注意,字典的引用順序對於此解決方案的工作至關重要:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" />
<ResourceDictionary Source="Resources.xaml" />
...
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
謝謝。這有幫助。是否也可以對字體進行其他更改?就像使所選標籤的標題字體爲粗體。我嘗試使用 ,但它改變了標籤內容的字體而不是標籤標題字體。 –
ilmenite