Я создаю пользовательский элемент управления. И вдруг встал вопрос: зачем ставить стиль управления отдельно от контроля? Я имею в виду, что, используя стандартный способ, вы должны: получить базовый элемент управления (например, из TextBox) и добавить для него стиль в general.xaml. Но почему мы не можем сделать так же, как это:Стиль места внутри пользовательского контроля
<TextBox x:Class="CustomTest.CoolTextBox"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<TextBox.Style>
<Style>
<Setter Property="TextBox.FontSize" Value="20" />
</Style>
</TextBox.Style>
</TextBox>
И код-за:
public partial class CoolTextBox : TextBox
{
public CoolTextBox()
{
InitializeComponent();
}
}
Update # 1
Я не пишу свою собственную библиотеку, но и создание пользовательский элемент управления внутри моего основного исполняемого файла. Темы поддержки приложений, но они отличаются только цветами. Поэтому каждая тема представляет собой набор ресурсов кисти, и мой стиль будет ссылаться на них, используя DynamicResource.
Что я хочу знать, это недостатки этого решения. Я имею в виду производительность, простоту использования и т. Д.
Спасибо за ответ! См. Обновление # 1 –
Динамические ресурсы медленнее, чем StaticResources, и их следует избегать. –
Согласен! Но в текущем проекте не так много элементов управления, и это замедление невидимо. –