WPF —— 后台实现fromto动画实例

标签页

<Button Width="100"
        Height="40"
        Content="点击开始动画"
        Click="Button_Click"
        Name="b1"
        >
</Button>

<!--HorizontalAlignment="Left"-->
    <!--VerticalAlignment="Top
  添加这俩个属性的目的是为了按钮变换的时候沿着一个方向进行放大
-->
<Button Width="100" Height="40"
        Content="做动画的按钮"
        Name="b2" 
        HorizontalAlignment="Left"
        VerticalAlignment="Top">
    
</Button>

1 创建动画对象

 DoubleAnimation 动画1  = new DoubleAnimation();

2 创建标签的动画开始的状态

动画1.From = b2.Width;

3 设置动画结束状态
           // 动画1.To = 250;

By 通过多少变成To值,To值-初始值=250-100=150

动画1.By = 150;

4 动画的时间 TimeSpan.FromSeconds(5) 5s

动画1.Duration = new Duration(TimeSpan.FromSeconds(5));

6设置一些常用的属性
            // 动画结束的时候保持结束状态值/开始的状态值

动画1.FillBehavior = FillBehavior.Stop;//开始的状态值
动画1.FillBehavior = FillBehavior.HoldEnd;//结束状态

 7 动画无限重复执行

动画1.RepeatBehavior = RepeatBehavior.Forever;

8 支持相反方向的动画

动画1.AutoReverse = true;

9 延迟执行动画

动画1.BeginTime =TimeSpan.FromSeconds(2);

 10 AccelerationRatio 速度变快这个过程所占的时间的比例
            //和 DecelerationRatio 速度变慢这个过程所占的时间的比例
            // 加速 5 * 0.3 = 1.5s  减速 5*0.3=1.5,剩余2s匀速

动画1.AccelerationRatio = 0.3;
            //动画1.DecelerationRatio = 0.3;

11 动画结束的事件,当一个动画结束之后可以在事件函数再开启另一个动画
            //这俩个动画就是相互独立的
            //必须写在动画开启之前 BeginAnimation 

动画1.Completed += 动画1_Completed;
private void 动画1_Completed(object? sender, EventArgs e)
{
    DoubleAnimation 动画2 = new DoubleAnimation();
    动画2.From = b2.Height;
    动画2.To = 250;
    动画2.Duration = new Duration(TimeSpan.FromSeconds(5));
    
    b2.BeginAnimation(Button.HeightProperty, 动画2);
}

5 开启动画 参数1是做动画的属性 参数2是动画实例对象,参数2也可以写成null,写成null是
            //停止动画  b1.BeginAnimation(Button.WidthProperty, null)

 b2.BeginAnimation(Button.WidthProperty, 动画1);

相关推荐

  1. WPF —— 后台实现fromto动画实例

    2024-04-08 01:14:02       16 阅读
  2. WPF —— FromTo/By动画

    2024-04-08 01:14:02       11 阅读
  3. WPF —— 平移变换动画实例

    2024-04-08 01:14:02       16 阅读
  4. WPF实现一个表格数据从cs获取动态渲染

    2024-04-08 01:14:02       21 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-08 01:14:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-08 01:14:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-08 01:14:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-08 01:14:02       20 阅读

热门阅读

  1. 加密攻击

    2024-04-08 01:14:02       9 阅读
  2. DtDay1

    DtDay1

    2024-04-08 01:14:02      13 阅读
  3. 设计原则、设计模式、设计模式项目实战

    2024-04-08 01:14:02       11 阅读
  4. 蓝桥杯 第 9 场 小白入门赛 盖印章

    2024-04-08 01:14:02       12 阅读
  5. C# BitConverter

    2024-04-08 01:14:02       13 阅读
  6. Leetcode 506. 相对名次

    2024-04-08 01:14:02       22 阅读
  7. Leetcode 539. 最小时间差

    2024-04-08 01:14:02       15 阅读
  8. Docker容器的IP地址

    2024-04-08 01:14:02       45 阅读
  9. 万得AI算法工程师一面面试题6道|含解析

    2024-04-08 01:14:02       15 阅读
  10. 【算法-数组】移除元素

    2024-04-08 01:14:02       13 阅读