Мы можем сделать WPF Custom Control для переопределения внешнего вида некоторых элементов управления, таких как кнопка со значком.
public class MyButton : Button {
static MyButton()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(MyButton), new FrameworkPropertyMetadata(typeof(MyButton)));
}
...
}
Но я думаю, что у этого пути есть некоторая проблема. Это вызывает некоторую проблему, когда я распространяю Custom Cotrol 'MyButton'. Поскольку MyButton зависит от внешнего ресурса, стиль WPF MyButton. Поэтому мне нужно распространять два файла: MyButton.cs и MyButton.WPF.
Итак, как определить шаблон Conotrol программным способом?
(Разумеется, еще один способ решения этой проблемы - создание пользовательского контроля WPF. Но я не об этом.)
Примечание: я нашел некоторые ресурсы по этой проблеме. Это был встроенный сценарий XAML. Но для меня сценарии XAML не вариант. Потому что я учусь на WPF, поэтому хочу знать сам WPF, а не трюк.