Я использую элементы управления Telerik WPF. Мне нужно было иметь собственную тему для элементов управления, которые я использовал, чтобы они выглядели как мой существующий пользовательский интерфейс.
Я создал собственную тему на основе встроенной темы Metro. Я открыл решение Themes, предоставленное вместе с элементами управления, и добавил в проект новый класс с именем Metro:
using Telerik.Windows.Controls;
namespace Telerik.Windows.Controls.External
{
[ThemeLocation(ThemeLocation.External)]
public class MetroThemeExternal : Theme
{
}
}
Тогда я исключил все файлы xaml, за исключением файла Generic.xaml, в папке «Темы» и ее подпапке Metro. Я включил файлы, которые мне нужно использовать. В вашем случае вы можете включить только файл PanelBar.xaml в решение. Не забудьте открыть Generic.xaml и вызвать словарь ресурсов PanelBar.xaml. Вы можете удалить другие вызовы в файле Generic.xaml, если не будете их использовать.
<ResourceDictionary Source="pack://application:,,,/Telerik.Windows.Themes.Metro;Component/Themes/Metro/PanelBar.xaml"/>
Вы можете изменять стили в PanelBar.xaml по мере необходимости, а затем компилировать проект. Чтобы использовать вашу тему в вашем приложении, просто установите ее следующим образом:
Telerik.Windows.Controls.StyleManager.ApplicationTheme = new Telerik.Windows.Controls.External.MetroThemeExternal();