我正在尝试从.NET Framework 4.5更改新的WPF功能区控件的主题。
我仅设法更改一些刷子(背景,前景,边框...),但我似乎无法更改明亮的覆盖层和阴影。
我很高兴使用资源词典,但我不知道我需要设置哪些属性。
我希望您能指向正确的方向,非常感谢您的帮助!
如果要更改任何其他内容,则除了功能区控件的暴露属性(或任何其他控件),例如背景,前景等。您必须编辑控件的模板。
在控件的模板中,您几乎可以更改控件视觉外观的一部分。
有关自定义控件模板的更多信息,请查看此链接:MSDN Styling&模板
对于任何人,您可以查看第三方控件,例如:Syncfusion的功能区(看起来像办公室主题)
它很简单,在您的app.xaml中,您可以定义一个主题并将此主题分配给所需的任何控件。例如,我已将Office_blue定义为我的主题,并仅将此主题分配给我的按钮:
<Application.Resources>
<telerik:Theme x:Key="TelerikGlobalTheme">Office_Blue</telerik:Theme>
<Style BasedOn="{x:Null}" TargetType="{x:Type Button}">
<Setter Property="telerik:StyleManager.Theme" Value="{DynamicResource TelerikGlobalTheme}" />
</Style>
您可以为上述定义的主题分配任意多的控件。
据我所知,有两个主题是" Windows 7(默认)",另一个是" Office 2007 Blue"。您可以通过在窗口的recous resouces resouces中添加一个recouce dictionay来更改主题。
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary
Source="/RibbonControlsLibrary;component/Themes/Office2007Blue.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
您可以将Office2007blue.xaml复制到新的XAML文件,然后对其进行修改以创建自定义主题,然后按照与上述相同的方式引用它。
您可以从这里获得更多有关色带的信息。
,如果您想快速简便的解决方案,请尝试使用此准备的WPF主题。