WPF中的DoubleAnimation
                                                                                                                    周银辉

DoubleAnimation指定一个Double类型的属性,使其在指定的时间内由起点值到达终点值,从而形成动画效果.
应用它来实现动画效果,只要简单地指定几个参数值就可以了.
看下面的代码是改变一个按钮的大小的动画
WPF中的DoubleAnimation //指定长度变化的起点,终点与持续时间
WPF中的DoubleAnimation
            DoubleAnimation widthAnimation = 
WPF中的DoubleAnimation                
new DoubleAnimation(200400new Duration(TimeSpan.FromSeconds(0.8)));
WPF中的DoubleAnimation
WPF中的DoubleAnimation            
//指定高度变化的起点,终点与持续时间
WPF中的DoubleAnimation
            DoubleAnimation heightAnimation = 
WPF中的DoubleAnimation                
new DoubleAnimation(50100new Duration(TimeSpan.FromSeconds(0.8)));
WPF中的DoubleAnimation
WPF中的DoubleAnimation            
//开始动画
WPF中的DoubleAnimation            
//变化不是阻塞的,而是异步,所以看上去长度与高度几乎是同时变化
WPF中的DoubleAnimation
            btn.BeginAnimation(Button.WidthProperty, widthAnimation);
WPF中的DoubleAnimation            btn.BeginAnimation(Button.HeightProperty, heightAnimation);
这样我们就可以得到一个简单的动画,它在0.8秒内将按钮的长度由200变化到400,高度由50变化到100.

但我们会发现当动画结束后,按钮的大小保持在(400,100), 如果我们需要动画结束后将按钮大小恢复到原大小,那么我们应该指定另外一个参数:
FillBehavior
WPF中的DoubleAnimation//指定长度变化的起点,终点与持续时间,并在动画结束时恢复原值
WPF中的DoubleAnimation
            DoubleAnimation widthAnimation = 
WPF中的DoubleAnimation                
new DoubleAnimation(200400new Duration(TimeSpan.FromSeconds(0.8)), FillBehavior.Stop);
WPF中的DoubleAnimation
WPF中的DoubleAnimation            
//指定高度变化的起点,终点与持续时间,并在动画结束时恢复原值
WPF中的DoubleAnimation
            DoubleAnimation heightAnimation = 
WPF中的DoubleAnimation                
new DoubleAnimation(50100new Duration(TimeSpan.FromSeconds(0.8)), FillBehavior.Stop);

 以下是完整的实例代码:
WPF中的DoubleAnimationusing System;
WPF中的DoubleAnimation
using System.Collections.Generic;
WPF中的DoubleAnimation
using System.Text;
WPF中的DoubleAnimation
using System.Windows;
WPF中的DoubleAnimation
using System.Windows.Controls;
WPF中的DoubleAnimation
using System.Windows.Data;
WPF中的DoubleAnimation
using System.Windows.Documents;
WPF中的DoubleAnimation
using System.Windows.Input;
WPF中的DoubleAnimation
using System.Windows.Media;
WPF中的DoubleAnimation
using System.Windows.Media.Imaging;
WPF中的DoubleAnimation
using System.Windows.Shapes;
WPF中的DoubleAnimation
using System.Windows.Media.Animation;
WPF中的DoubleAnimation
WPF中的DoubleAnimation
WPF中的DoubleAnimation
namespace DoubleAnimationTest
}

相关文章:

  • 2021-11-06
  • 2022-01-01
  • 2021-05-19
  • 2022-01-01
  • 2021-06-17
  • 2022-02-13
  • 2021-09-12
  • 2021-10-06
猜你喜欢
  • 2022-02-24
  • 2022-12-23
  • 2022-12-23
  • 2021-05-20
  • 2022-02-04
  • 2021-11-08
  • 2021-09-07
相关资源
相似解决方案