2021-08-27

                            WPF动画

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:VS与WPF

作者:黄富滔

撰写时间:2021年08月06日

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

      页面上不是越多动画就越好,动画越多,系统就会越卡顿。会影响用户的使用感受,也就是要关注性能问题,而且有必要的动画还要控制动画的帧率。

动画的生命周期:WPF动画只是暂时的,这意味着它们不能真正改变基本属性的值, 当动画处于活动状态时,只是覆盖了属性的值。

WPF有三种动画:

1.0 线性插值,命名方式为“类型名+Animation类”(7个)

在开始值和结束值之间以逐步增加的方式改变属性的动画(线性插值过程)。

2.0 关键帧,命名方式为“类型名+AnimationUsingKeyFrames”(22个)

从一个值突然变成另一值的动画(关键帧动画)。

3.0 路径,命名方式为“类型名+AnimationUsingPath”(3个,不常用)

注意:1、数据类型都支持关键帧动画,除非他们根本不支持动画。

  2、所有支持线性插值动画的数据类型,就一定会有相应的关键帧动画。

 3、所有支持关键帧动画的数据类型,不一定会有相应的线性插值动画

故事版是动画的基本单元,可以控制动画的暂停、播放、开始等等

如果要将动画应用于某一个对象时,要声明故事版Storyboard并TargetName 和 TargetProperty附加属性指定要进行动画处理的对象和属性,最后需要使用事件触发器EventTrigger去触发。

TargetName 和TargetProperty可以作为故事版的附加属性,也可作为故事版的属性。当作为故事版的属性时,下面所有的动画都会执行故事版设置好的TargetProperty的属性。

动画依赖故事版,故事版又依赖触发器。所以一个完整的动画,需要三个部分:

一、动画的定义

二、把动画放到故事版里面

三、使用触发器触发动画

     线性插值动画:对象属性和动画播放控制属性

对象属性:

Form :动画基值

To:到指定的值

Duration="0:0:10"  执行一次动画的时间  

动画播放控制属性:

BeginTime:动画开始时间,默认单位是天,也可以设置时:分:秒

RepeatBehavior:动画执行次数或者时间,属性值可以是具体数值 "2" ,具体时间 "时:分:秒",或者无限循环"Forever"

AutoReverse="True"  反方向执行动画,渐变过程,例如仅仅设置淡入,也会有淡出过程

SpeedRadio="2":动画执行的速度

FillBehavior  决定什么时候发生动画,什么时候结束动画。HoldEnd表示动画结束后不再变化;Stop表示动画结束后再次回到起始值。

关键帧动画:

-ColorAnimationUsingKeyFrames   背景颜色方面

 DoubleAnimationUsingKeyFrames  数值方面

PointAnimationUsingKeyFrames    关键点

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值