EventTrigger

时间秒杀一切 提交于 2019-12-25 06:53:05

EventTrigger 和 Storyboard

另一种类型的触发器是 EventTrigger,它根据事件的引发来启动一组操作。 例如,下面的 EventTrigger 对象指定当鼠标指针进入 ListBoxItem 时,MaxHeight属性在 0.2 秒时间内以动画方式增大为值 90 当鼠标离开该项时,该属性在 1 秒时间内还原为原始值。 请注意为何无需为 MouseLeave 动画指定 To 值。这是因为动画能够跟踪原始值。

 

  <EventTrigger RoutedEvent="Mouse.MouseEnter">
          <EventTrigger.Actions>
            <BeginStoryboard>
              <Storyboard>
                <DoubleAnimation
                  Duration="0:0:0.2"
                  Storyboard.TargetProperty="MaxHeight"
                  To="90"  />
              </Storyboard>
            </BeginStoryboard>
          </EventTrigger.Actions>
        </EventTrigger>
        <EventTrigger RoutedEvent="Mouse.MouseLeave">
          <EventTrigger.Actions>
            <BeginStoryboard>
              <Storyboard>
                <DoubleAnimation
                  Duration="0:0:1"
                  Storyboard.TargetProperty="MaxHeight"  />
              </Storyboard>
            </BeginStoryboard>
          </EventTrigger.Actions>
  </EventTrigger>---转自MSDN,样式设置和模版化
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!