【发布时间】:2017-12-21 02:07:13
【问题描述】:
我在 WPF 中创建了一组按钮。我在按钮上添加了两个触发器,MouseOver 和 IsPressed。但是,只有 IsPressed 触发器有效,但 MouseOver 效果无效。我希望能够用鼠标光标突出显示按钮,然后它会变成不同的颜色。我错过了什么?
XAML:
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border x:Name="Border" >
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="DarkGoldenrod"/>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter TargetName="Border" Property="BorderThickness" Value="10,10,0,0"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
已编辑:
<Style.Triggers>
<Trigger Property="IsPressed" Value="True">
<Setter Property="BorderThickness" Value="10,10,0,0">
</Setter>
<Setter Property="Opacity" Value="0.2"/>
</Trigger>
</Style.Triggers>
【问题讨论】: