В соответствии с приоритетом свойства значения приоритета локальное значение имеет более высокий приоритет по сравнению с шаблонами управления (см. Ссылку https://msdn.microsoft.com/fr-fr/library/ms743230%28v=vs.85%29.aspx).Локальное значение свойства Background и Content при управлении кнопками не задано, если в шаблоне управления указан фон и содержимое
Но в моем примере ниже, содержание и фона свойство кнопки управления устанавливается из шаблона управления, несмотря на указания эти свойства элемента управления locally.Background установлен Оранжевый и содержание как «TemplateContent»
Ниже XAML:
<Window.Resources>
<ControlTemplate x:Key="ButtonTemplate" TargetType="Button" >
<Border CornerRadius="10" Width="100" Height="50" Background="Orange">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" Content="TemplateContent" />
</Border>
</ControlTemplate>
</Window.Resources>
<Button Template="{StaticResource ButtonTemplate}" Background="Blue" Grid.Row="2" Grid.Column="0" Content="LocalContent" Width="100" Height="100" HorizontalAlignment="Center">
Я также понимаю, локальные значения могут иметь влияние, когда TemplateBinding используется в контрольных template.But почему не локальное значение имеют влияние, несмотря на имеющие более высокий приоритет порядка в зависимости стоимости имущества старшинства
Вам нужно будет использовать привязки шаблонов, если вы хотите, чтобы шаблоны настраивались. Попробуйте заменить «Оранжевый» на '{TemplateBinding Background}'. Если по умолчанию он должен быть оранжевым, укажите стиль, который делает это - этот стиль также может устанавливать шаблон, поэтому вам не нужно делать это явно. –