闪烁根据其值的变化突出显示一个按钮

时间:2015-06-01 12:26:35

标签: c# wpf data-binding wpf-controls

我有WPF控件,它有一个包含许多按钮的列表视图 我需要这些按钮在其绑定值改变时短暂闪烁并突出显示(当值上升时为绿色,当值下降时为红色)。

这样做的最佳方式是什么?

1 个答案:

答案 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">修改为您想要的触发器,并执行您想要的动画。