新しいWPF リボン コントロールのテーマを.NET Framework 4.5 から変更しようとしていますが、行き詰まっています。
いくつかのブラシ(背景、前景、境界線など) を変更することしかできませんでしたが、明るいオーバーレイと影を変更できないようです。
リソース ディクショナリを使用してよかったのですが、どのプロパティを設定する必要があるかわかりません。
あなたが私を正しい方向に向けることができることを願っています、あなたの助けに感謝します!
新しいWPF リボン コントロールのテーマを.NET Framework 4.5 から変更しようとしていますが、行き詰まっています。
いくつかのブラシ(背景、前景、境界線など) を変更することしかできませんでしたが、明るいオーバーレイと影を変更できないようです。
リソース ディクショナリを使用してよかったのですが、どのプロパティを設定する必要があるかわかりません。
あなたが私を正しい方向に向けることができることを願っています、あなたの助けに感謝します!
リボン コントロール (またはその他のコントロール) の公開されたプロパティ (背景、前景など) 以外のものを変更する場合は、コントロールのTemplateを編集する必要があります。
コントロールのテンプレートでは、コントロールの外観の一部であるほとんどすべてを変更できます。
コントロールのテンプレートのカスタマイズの詳細については、次のリンクを参照してください: MSDN Styling & Templating
これに遭遇した人は、次のようなサードパーティのコントロールを見ることができます: 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」用の2つのテーマがあります。次のように、Office 2007 Blue の xaml ファイルをソースとするリソース ディクショナリをウィンドウのリソースに追加することで、テーマを変更できます。
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary
Source="/RibbonControlsLibrary;component/Themes/Office2007Blue.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
Office2007Blue.xaml を新しい xaml ファイルにコピーし、それを変更してカスタム テーマを作成し、上記と同じ方法で参照できます。
ここからリボンについて詳しく知ることができます。
迅速かつ簡単なソリューションが必要な場合は、この準備ができているWPF テーマを試してください。