0
我想使用事件触发器在XAML中实现,其中按钮的样式(按钮和文本变大)触发鼠标输入时发生更改。然后,当鼠标离开事件触发时,它将回到它以前的样式。使用事件触发器的按钮控件动画
我已经研究过,但我的问题是当单击一个按钮时,鼠标输入的样式必须保留,除非单击其他按钮。
<Style.Triggers>
<EventTrigger RoutedEvent="Button.MouseEnter">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="LayoutTransform.ScaleX"
To="2" Duration="0:0:0.25"/>
<DoubleAnimation Storyboard.TargetProperty="LayoutTransform.ScaleY"
To="2" Duration="0:0:0.25"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
<EventTrigger RoutedEvent="Button.MouseLeave">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="LayoutTransform.ScaleX"
To="1" Duration="0:0:0.25"/>
<DoubleAnimation Storyboard.TargetProperty="LayoutTransform.ScaleY"
To="1" Duration="0:0:0.25"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
</Style.Triggers>
任何帮助表示赞赏。谢谢!
我不确定我是否理解这个问题。你想让按钮在被点击时视觉上什么也不做,或者......? – VLTII 2012-07-30 13:47:22
当按钮被点击时,我希望它保持大。所以在鼠标输入:按钮变大。鼠标离开时:按钮变小。但在鼠标点击时:即使触发鼠标离开,按钮也应该保持较大。 – lionheart 2012-07-30 13:52:46
这听起来像你想要的是一个ToggleButton而不是一个普通的按钮,并将你的样式更改应用于Checked事件而不是MouseEnter/MouseLeave事件。 – 2012-07-30 14:27:49