Изменить тему .NET 4.5 WPF Ribbon
Я пытаюсь изменить тему нового WPF Ribbon Control из .NET Framework 4.5, и я застрял.
Мне удалось изменить несколько кистей (Background, Foreground, Border...), но я, похоже, не могу изменить яркие оверлеи и тени.
Я рад использовать ресурсный словарь, но я не знаю, какие свойства мне нужно установить.
Надеюсь, вы можете указать мне в правильном направлении, большое спасибо за вашу помощь!
Ответы
Ответ 1
Если вы хотите изменить что-либо большее, чем открытые свойства элемента управления ленты (или любого другого элемента управления), например. Background, Foreground и т.д. Вам нужно будет отредактировать элемент управления Шаблон.
В шаблоне управления вы можете изменить почти любую часть визуального внешнего вида элемента управления.
Дополнительные сведения о настройке шаблона управления см. по этой ссылке: MSDN Styling and Templating
Ответ 2
Для тех, кто сталкивается с этим, вы можете посмотреть на сторонние элементы управления, например: лента Syncfusion (выглядит как офисная тема)
Ответ 3
это довольно просто, в вашем App.xaml вы можете определить тему и назначить эту тему любому элементу управления, который вы хотите. например, я определил Office_Blue как тему и назначил эту тему только моей Button только как ниже:
<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>
вы можете назначить столько элементов управления, сколько хотите, для указанной темы, как указано выше.
Ответ 4
Есть две темы, насколько мне известно, одна для "Windows 7 (по умолчанию)", а другая для "Office 2007 Blue". Вы можете изменить тему, добавив в окно resouce dictionay окно, источник которого представляет собой файл xaml для Office 2007 Blue, например:
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary
Source="/RibbonControlsLibrary;component/Themes/Office2007Blue.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
Вы можете скопировать файл Office2007Blue.xaml в новый файл xaml и изменить его для создания настраиваемой темы, а затем ссылаться на него следующим образом, как описано выше.
Здесь вы можете получить больше о ленте .
И если вам нужно быстрое и простое решение, попробуйте эту готовую темы WPF.