C# 为什么是&书信电报;ControlTemplate.Triggers>&引用;无法识别或访问?
我想更改某些按钮单击时的样式(C# 为什么是&书信电报;ControlTemplate.Triggers>&引用;无法识别或访问?,c#,wpf,xaml,C#,Wpf,Xaml,我想更改某些按钮单击时的样式(IsPressed)(例如,将BorderThickness更改为1,1,0)。我已尝试,但出现错误:“无法识别或访问成员“触发器”。 这是我得到的代码: <UserControl <!-- ... --> > <UserControl.Resources> <Style TargetType="Button"> <Setter Property="Template">
IsPressed
)(例如,将BorderThickness
更改为1,1,0
)。我已尝试
,但出现错误:“无法识别或访问成员“触发器”。这是我得到的代码:
<UserControl
<!-- ... -->
>
<UserControl.Resources>
<Style TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Name="border" Background="LightGray" BorderThickness="2, 2, 2, 1" BorderBrush="Black" CornerRadius="5,5,0,0">
<ContentPresenter VerticalAlignment="Center" HorizontalAlignment="Center" />
</Border>
<ControlTemplate.Triggers> <!-- Here is the error -->
<Trigger Property="Button.IsPressed" Value="True">
<Setter TargetName="border" Property="BorderThickness" Value="2, 2, 2, 0" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</UserControl.Resources>
<Grid x:Name="LayoutRoot" Background="White">
<!-- some definitions -->
<Button Grid.Column="0" Content="1" />
<Button Grid.Column="1" Content="2" />
<Button Grid.Column="2" Content="3" />
</Grid>
单击按钮并应用样式时,如何处理样式更改
编辑:用代码填充“/…”无法识别或访问它,因为Silverlight不支持它。请参阅本MSDN文章:WPF或Silverlight?Silverlight不支持
ControlTemplate
触发器,您必须使用VisualStateManager
..@minimen来使用VisualStateManager
设置BorderThickness
的动画,您需要ThicknessAnimation
,不幸的是Silverlight甚至没有that@dkozl没有别的办法吗?我想用纯正的语言来处理这个问题XAML@RoelvanWesterop我正在使用WPF,有什么办法可以实现吗?@RoelvanWesterop为什么ControlTemplate.Triggers
对其他人有效,但对我无效,和