Элементы управления Windows темы WPF для соответствия Telerik
У нас есть проект, который в основном использует элементы управления Telerik WPF. К сожалению, в некоторых элементах управления (в основном в элементе управления tab) есть некоторые ошибки show stopper, что означает, что вместо этого нам нужно было удалить эквивалент windows. Есть ли в любом случае, чтобы получить элементы управления windows в стиле, как telerik, поскольку в настоящее время они вообще не совпадают. Мне сказали,что вы можете это сделать, но ничего не можете найти в интернете.
Спасибо.Внутри.Вперед!1-->
2 ответов
хорошо, на этот вопрос уже "ответили", но мне также было невероятно трудно найти какую-либо информацию, поэтому для тех, кто следует:
установка темы для элементов управления Telerik легко, например
Telerik.Windows.Controls.StyleManager.ApplicationTheme = new Telerik.Windows.Controls.SummerTheme();
но что вам также нужно сделать, это создать файл ресурсов, который устанавливает тему для всех элементов управления windows, например
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
>
<Style TargetType="TextBox" BasedOn="{StaticResource {telerik:ThemeResourceKey ThemeType=telerik:SummerTheme, ElementType=TextBox}}" />
<Style TargetType="Button" BasedOn="{StaticResource {telerik:ThemeResourceKey ThemeType=telerik:SummerTheme, ElementType=Button}}" />
<Style TargetType="ListBox" BasedOn="{StaticResource {telerik:ThemeResourceKey ThemeType=telerik:SummerTheme, ElementType=ListBox}}" />
<Style TargetType="CheckBox" BasedOn="{StaticResource {telerik:ThemeResourceKey ThemeType=telerik:SummerTheme, ElementType=CheckBox}}" />
<Style TargetType="PasswordBox" BasedOn="{StaticResource {telerik:ThemeResourceKey ThemeType=telerik:SummerTheme, ElementType=PasswordBox}}" />
<Style TargetType="ScrollViewer" BasedOn="{StaticResource {telerik:ThemeResourceKey ThemeType=telerik:SummerTheme, ElementType=ScrollViewer}}" />
затем вы либо добавляете его в ресурсы приложения, помещая строку в свой приложение.язык XAML:
<ResourceDictionary Source="Resources/Windows_SummerTheme.xaml" />
или добавив его в код:
Application.Current.Resources.MergedDictionaries.Add("./Resources/Windows_SummerTheme.xaml");
очевидно, вы можете создать файл для каждой темы и использовать оператор case, чтобы пользователь мог снять кожу с приложения из меню.
надеюсь, что это помогает!
мне удалось узнать это от человека, который первоначально сказал мне для тех, кто имеет ту же проблему.