在我看来,我有一个按钮:
<Button Style="{StaticResource ButtonTextForwardStyle}" Content="My Text" Width="400" Height="100" />
在app.xaml中,我正在尝试定义一个看起来像
的样式
<ControlTemplate x:Key="ButtonTextForwardTemplate" TargetType="Button">
<Grid>
<vsm:VisualStateManager.VisualStateGroups>
<vsm:VisualStateGroup x:Name="CommonStates">
<vsm:VisualState x:Name="Normal"/>
<vsm:VisualState x:Name="Pressed"/>
</vsm:VisualStateGroup>
</vsm:VisualStateManager.VisualStateGroups>
</Grid>
</ControlTemplate>
<Style x:Key="ButtonTextForwardStyle" TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Grid>
<vsm:VisualStateManager.VisualStateGroups>
<vsm:VisualStateGroup x:Name="CommonStates">
<vsm:VisualState x:Name="Normal"/>
<vsm:VisualState x:Name="Pressed">
<Storyboard Storyboard.TargetName="image" Storyboard.TargetProperty="Source">
<ObjectAnimationUsingKeyFrames>
<DiscreteObjectKeyFrame KeyTime="0" Value="pressedimage.png"/>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</vsm:VisualState>
</vsm:VisualStateGroup>
</vsm:VisualStateManager.VisualStateGroups>
<StackPanel Orientation="Horizontal">
<Image x:Name="image" Source="normalimage.png" Height="80" Width="100" Stretch="Fill" VerticalAlignment="Center"/>
<TextBlock Text="{Binding Content}" VerticalAlignment="Center" />
</StackPanel>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
我希望将按钮(我的文本)的内容绑定到TextBlock。但看起来它似乎不起作用。
我该怎么做?
提前感谢您的帮助。
祝你好运
答案 0 :(得分:3)
您的TextBlock位于Button ControlTemplate中,因此您可能希望使用TemplateBinding而不是Binding。
<TextBlock Text="{TemplateBinding Content}"