我目前使用Blend和一些教程,我在网上找到,试图使自己的按钮,用户控制。 通常情况下,我只想用一个自定义样式,并把它应用到我想要的控制,但我在一些依赖属性写道以及所以我决定写我自己的用户控制。
东西,我可以不在身边让我的头是如何设置的内容属性,而不会覆盖按钮控件的样式。 我想这可能是我的代码,但我开始新品牌的另一个按钮和我有同样的事情发生 - 在内容属性设置,按键简单地变为白色,并在左上角的黑色文本。
下面是掺和我生成的XAML代码:
<UserControl x:Class="MyUI.Controls.MyButton"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="25" d:DesignWidth="100">
<UserControl.Resources>
<Style x:Key="MyButtonStyle" TargetType="{x:Type Button}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Grid>
<Rectangle/>
<ContentPresenter
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
RecognizesAccessKey="True"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsFocused" Value="True"/>
<Trigger Property="IsDefaulted" Value="True"/>
<Trigger Property="IsMouseOver" Value="True"/>
<Trigger Property="IsPressed" Value="True"/>
<Trigger Property="IsEnabled" Value="False"/>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</UserControl.Resources>
<Grid>
<Button Content="Button" Height="25" Style="{DynamicResource MyButtonStyle}" Width="100"/>
</Grid>
现在,如果我在这样的主窗口引用按钮,它会恢复这是用户控制的范围内做任何样式:
<local:MyButton Content="test" />
我需要什么,以使按钮接受不同的内容标签更改?