Путаница с атрибутом "BasedOn"
У меня есть решение с 3 проектами
- Приложение WPF (ссылается на другие 2 и добавляет тему в App.Resources)
- Библиотека CustomControl
- Индивидуальная тема
Тема содержит следующий стиль кнопок
<Style TargetType="{x:Type Button}">
<Setter Property="BorderBrush"
Value="Green" />
</Style>
Библиотека Control содержит следующее:
<Style TargetType="{x:Type Button}"
BasedOn="{StaticResource {x:Type Button}}"
x:Key="ButtonStyle">
<Setter Property="Padding"
Value="50" />
</Style>
<Style TargetType="{x:Type local:CustomControl1}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:CustomControl1}">
<Button Style="{StaticResource ButtonStyle}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Что в библиотеке элементов управления вычисляет 'BasedOn="{StaticResource {x:Type Button}}"?
Я думал, что это будет соответствовать стилю Button в теме, но, похоже, это не так, поскольку свойство зеленой границы не используется.
Может кто-нибудь объяснить правила поиска здесь?