我有WPF控件,它有一个包含许多按钮的列表视图 我需要这些按钮在其绑定值改变时短暂闪烁并突出显示(当值上升时为绿色,当值下降时为红色)。
这样做的最佳方式是什么?
答案 0 :(得分:1)
以下示例使用触发器在Foreground
属性变为IsMouseOver
时为Button的Green
设置动画。
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
WindowTitle="Animate Properties with Storyboards">
<Page.Resources>
<Style x:Key="PropertyTriggerExampleButtonStyle" TargetType="{x:Type Button}">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Foreground" To="Green" />
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
<Trigger.ExitActions>
</Trigger>
</Style.Triggers>
</Style>
</Page.Resources>
<StackPanel Margin="20">
<Button Style="{StaticResource PropertyTriggerExampleButtonStyle}" />
</StackPanel>
</Page>
将<Trigger Property="IsMouseOver" Value="True">
修改为您想要的触发器,并执行您想要的动画。