【问题标题】:How to stop DoubleAnimation on mouseover event?如何在鼠标悬停事件上停止 DoubleAnimation?
【发布时间】:2014-05-01 10:31:19
【问题描述】:

我有两个画布和一个名为 tbmarquee 的文本块,在窗口加载时它会从上到下进行动画处理,但是当我在鼠标上方时我想停下来,当我点击它时会转到链接,该怎么做吗?

 void Window1_Loaded(object sender, RoutedEventArgs e)
    {
        DoubleAnimation doubleAnimation = new DoubleAnimation();
        doubleAnimation.From = -tbmarquee.ActualHeight;
        doubleAnimation.To = canMain.ActualHeight;
        doubleAnimation.RepeatBehavior = RepeatBehavior.Forever;
        doubleAnimation.Duration = new Duration(TimeSpan.Parse("0:0:10"));
        tbmarquee.BeginAnimation(Canvas.TopProperty, doubleAnimation);

    }

【问题讨论】:

    标签: wpf wpf-controls marquee wpf-animation doubleanimation


    【解决方案1】:

    鼠标悬停在tbmarquee 的事件处理程序上,再次调用BeginAnimation() 并将第二个参数设置为null 以停止动画:

    tbmarquee.BeginAnimation(Canvas.TopProperty, null);
    

    相关问题:How to stop an animation in C# / WPF?

    【讨论】:

    • 添加上面的代码,即使用 null 参数再次调用 BeginAnimation() 只是在没有 MouseOver 事件的情况下停止动画,它不会动画..
    猜你喜欢
    • 1970-01-01
    • 2018-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    相关资源
    最近更新 更多