• 1000 *
В общем, нам нужно make Templated Control для custom AppBarToggleButton
. Когда мы создаем шаблонный элемент управления с помощью Visual Studio, он создает файл Generic.xaml
в папке Themes , который использовался для объявления стиля настраиваемого элемента управления. И файл cs настраиваемого элемента управления, как показано ниже.
public sealed class CustomAppBarToggleButton : AppBarToggleButton
{
public CustomAppBarToggleButton()
{
this.DefaultStyleKey = typeof(CustomAppBarToggleButton);
}
}
Если вы не хотите редактировать стиль по умолчанию, вы можете удалить строку DefaultStyleKey
, которая использовалась для привязки текущего элемента управления к стилю в Generi c .xaml файл.
Откройте Generic.xaml
файл, вы найдете следующее. И это пустой стиль. Если мы хотим внести небольшие изменения, вам нужно скопировать полный стиль AppBarToggleButton
, чтобы заменить его, и отредактировать TargetType
на local:CustomAppBarToggleButton
. Затем вы можете отредактировать базу стилей по своему усмотрению.
<Style TargetType="local:CustomAppBarToggleButton" >
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="local:CustomAppBarToggleButton">
<Border
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
И если вы хотите создать новое свойство зависимости, определите его в файле cs, а затем используйте TemplateBinding
для привязки свойства в стиле. Для получения дополнительной информации, пожалуйста, проверьте этот документ .