WPF动画中断在相反方向上要慢得多

萨本库

这是我的代码:

XAML:

  <Grid>

    <Grid.RowDefinitions>
      <RowDefinition></RowDefinition>
      <RowDefinition></RowDefinition>
    </Grid.RowDefinitions>

    <Button Padding="10" Name="cmdGrow" Click="cmdGrow_Click" Height="40" Width="160"
            HorizontalAlignment="Center" VerticalAlignment="Center" Content="Grow Button #1 "></Button>
    <Button Grid.Row="1" Padding="10" Name="cmdShrink" Click="cmdShrink_Click"
            HorizontalAlignment="Center" VerticalAlignment="Center" Content="Shrink Button #1"></Button>

    </Grid>

后台代码:

namespace Animation
{
    public partial class CodeAnimation : System.Windows.Window
    {
        public CodeAnimation()
        {
            InitializeComponent();
        }

        private void cmdGrow_Click(object sender, RoutedEventArgs e)
        {
            DoubleAnimation widthAnimation = new DoubleAnimation();

            widthAnimation.Duration = TimeSpan.FromSeconds(5);
            widthAnimation.To = 270;

            cmdGrow.BeginAnimation(Button.WidthProperty, widthAnimation);
        }

        private void cmdShrink_Click(object sender, RoutedEventArgs e)
        {
            DoubleAnimation widthAnimation = new DoubleAnimation();

            widthAnimation.Duration = TimeSpan.FromSeconds(5);
            //widthAnimation.To = 20;

            cmdGrow.BeginAnimation(Button.WidthProperty, widthAnimation);
        }
    } 
}

产生以下简单的UI:

在cmdShrink_Click()事件中,如果未指定动画的“ To”属性,则反向动画(即“收缩”)比向前动画(即“增长”)要慢得多。我已经通过在cmdShrink_click()事件中放置一个断点来检查Duration属性,它显示为5秒:

要进行复制,请单击“增长”按钮,而不是在“增长”动画完成之前半按“收缩”按钮

好像多个动画的持续时间具有累积效果。

我在Windows 7,.NET FW 4客户端配置文件,VS 2010上。

迈克·斯特罗贝尔

动画速度较慢,因为它必须在相同的时间量(5秒)内覆盖较小的大小差异。增长动画的速率基于其预期的最终大小,但是您将动画剪短了。如果您将增长动画停止到一半,则缩小动画需要覆盖的距离是增长动画预期覆盖的一半,但是您仍在告诉它要花整整五秒钟的时间。为了在相同的时间内覆盖一半的距离,它以一半的速度前进。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Segue动画中断

来自分类Dev

使精灵沿矢量的相反方向移动

来自分类Dev

多态关联导轨的相反方向

来自分类Dev

禁用范围滑块中的相反方向

来自分类Dev

CSS 动画中断变换

来自分类Dev

jQuery window.scroll在相反方向垂直移动div

来自分类Dev

如何使我的js滑块向相反方向移动?

来自分类Dev

Nokogiri从节点(每个父节点)沿相反方向移动

来自分类Dev

精灵正在碰撞,但球不会向相反方向反弹

来自分类Dev

如何将颜色的色调向相反方向移动

来自分类Dev

无限滚动从下到上的相反方向?

来自分类Dev

使用递归返回字符串的相反方向?

来自分类Dev

EnemyAI 在 Y 轴上以相反方向旋转

来自分类Dev

在 flexbox 的相反方向垂直对齐文本

来自分类Dev

WPF动画中的数据更改

来自分类Dev

为什么javascript中的变量要慢得多?

来自分类常见问题

为什么复制经过改组的列表要慢得多?

来自分类Dev

为什么Object.create比构造函数要慢得多?

来自分类Dev

为什么在Python中嵌套“ if”比并行“ and”要慢得多?

来自分类Dev

为什么纹理查找比直接计算要慢得多?

来自分类Dev

为什么写入内存比读取内存要慢得多?

来自分类Dev

与语句相比,用preparedStatement查询要慢得多

来自分类Dev

反转后,小数乘法的速度要慢得多

来自分类Dev

犰狳inplace_plus比“普通” plus操作要慢得多

来自分类Dev

避免jQuery UI可调整大小的“ alsoResize”向相反方向移动

来自分类Dev

D3.js如何使用基本SVG元素向相反方向过渡

来自分类Dev

CSS Transition Transform:以一种方式滑动元素,并使其从相反方向向后滑动

来自分类Dev

如何在相反方向垂直移动两个列表

来自分类Dev

指数危害模型系数的相反方向(带有survreg和glm Poisson)

Related 相关文章

  1. 1

    Segue动画中断

  2. 2

    使精灵沿矢量的相反方向移动

  3. 3

    多态关联导轨的相反方向

  4. 4

    禁用范围滑块中的相反方向

  5. 5

    CSS 动画中断变换

  6. 6

    jQuery window.scroll在相反方向垂直移动div

  7. 7

    如何使我的js滑块向相反方向移动?

  8. 8

    Nokogiri从节点(每个父节点)沿相反方向移动

  9. 9

    精灵正在碰撞,但球不会向相反方向反弹

  10. 10

    如何将颜色的色调向相反方向移动

  11. 11

    无限滚动从下到上的相反方向?

  12. 12

    使用递归返回字符串的相反方向?

  13. 13

    EnemyAI 在 Y 轴上以相反方向旋转

  14. 14

    在 flexbox 的相反方向垂直对齐文本

  15. 15

    WPF动画中的数据更改

  16. 16

    为什么javascript中的变量要慢得多?

  17. 17

    为什么复制经过改组的列表要慢得多?

  18. 18

    为什么Object.create比构造函数要慢得多?

  19. 19

    为什么在Python中嵌套“ if”比并行“ and”要慢得多?

  20. 20

    为什么纹理查找比直接计算要慢得多?

  21. 21

    为什么写入内存比读取内存要慢得多?

  22. 22

    与语句相比,用preparedStatement查询要慢得多

  23. 23

    反转后,小数乘法的速度要慢得多

  24. 24

    犰狳inplace_plus比“普通” plus操作要慢得多

  25. 25

    避免jQuery UI可调整大小的“ alsoResize”向相反方向移动

  26. 26

    D3.js如何使用基本SVG元素向相反方向过渡

  27. 27

    CSS Transition Transform:以一种方式滑动元素,并使其从相反方向向后滑动

  28. 28

    如何在相反方向垂直移动两个列表

  29. 29

    指数危害模型系数的相反方向(带有survreg和glm Poisson)

热门标签

归档