动画命名空间:using System.Windows.Media.Animation;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Data;
- using System.Windows.Documents;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Imaging;
- using System.Windows.Navigation;
- using System.Windows.Shapes;
- using System.Windows.Media.Animation;
-
- namespace WpfApp1
- {
- ///
- /// MainWindow.xaml 的交互逻辑
- ///
- public partial class MainWindow : Window
- {
- public MainWindow()
- {
- InitializeComponent();
- }
-
- private void btn_Click(object sender, RoutedEventArgs e)
- {
- //创建一个双精度的动画
- DoubleAnimation animation = new DoubleAnimation();
- animation.From = btn.Width;//动画的初始值
- animation.To = btn.Width - 30; //动画的结束值
- animation.Duration = TimeSpan.FromSeconds(2);//动画的持续时间
- animation.AutoReverse = true;//动画变化后恢复原状
- animation.RepeatBehavior = new RepeatBehavior(5);//new 执行次数 //RepeatBehavior.Forever;//一直重复执行 执行周期
-
- animation.Completed += animation_Completed;//动画完成后执行的事件
-
-
- btn.BeginAnimation(Button.WidthProperty, animation);
- }
- private void animation_Completed(object sender, EventArgs e)
- {
- btn.Content = "动画已完成";
- }
- }
- }
-