当鼠标悬停在按钮上时,我正在尝试更改BorderBrush
的颜色。我为按钮创建了一个新的控件模板,但是在设置触发器时,Visual Studio告诉我必须使用EventTrigger
,但是当我使用此按钮时,没有MouseOver
事件,只有{{ 1}}事件。应用此选项并运行解决方案时,边框笔刷不会更改。有什么建议吗?
编辑:
代码我遇到了以下问题:
MouseEnter
答案 0 :(得分:2)
您可以将Trigger
添加到<ControlTemplate.Triggers>
而不是将EventTrigger
添加到<Border.Triggers>
:
<ControlTemplate x:Key="LogInButton">
<Grid Width="AUTO" Height="AUTO">
<Border x:Name="ButtonBorder"
BorderBrush="#B7B7B7"
BorderThickness="2"
Background="Transparent"
Cursor="Hand">
<Image Source="{Binding Tag, RelativeSource={RelativeSource TemplatedParent}}"/>
</Border>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="ButtonBorder" Property="BorderBrush" Value="White" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>