C#   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c# – 如何停止动画WPF?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如何停止动画,以便它不会产生已完成的事件.这是一个简单的例子

<Window x:Class="WpfApplication5.MainWindow"
        xmlns="http://scheR_310_11845@as.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://scheR_310_11845@as.microsoft.com/winfx/2006/xaml"
        title="MainWindow" Height="248" Width="318">
    <Grid>
        <Border Width="20" Height="20" BACkground="Red" MouseEnter="Border_MouseEnter" MouSELEave="Border_MouSELEave" x:Name="border" />
    </Grid>
</Window>

支持代码

private void Border_MouseEnter(object sender,MouseEventArgs E)
{
    var a = new DoubleAnimation { To = 0,Duration = TimeSpan.FromMilliseconds(4000) };
    a.Completed += (obj,args) => messageBox.Show("Boom!");
    border.beginAnimation(Border.opacityProperty,a);
}

private void Border_MouSELEave(object sender,MouseEventArgs E)
{
    border.beginAnimation(Border.opacityProperty,null);
    border.opacity = 1;
}

如果我在矩形变为白色之前移出鼠标,它会在一段时间后显示弹出窗口.怎么预防这个?让我们假设Border_MouSELEave和Border_MouseEnter方法彼此不了解(它们不能相互传递动画实例变量).

解决方法

你可以用这个

<Border Width="20" Height="20" BACkground="Red" x:Name="border" >
                <Border.triggers>
                    <Eventtrigger RoutedEvent="MouseEnter">
                        <BeginStoryboard Name="Ali">
                            <Storyboard>
                                <DoubleAnimation To="0" Duration="0:0:4" Completed="com" Storyboard.TargetProperty="Opacity"/>
                            </Storyboard>
                        </BeginStoryboard>
                    </Eventtrigger>
                    <Eventtrigger RoutedEvent="MouSELEave">
                        <StopStoryboard  BeginStoryboardName="Ali"/>
                    </Eventtrigger>
                </Border.triggers>
            </Border>

并且:

private void com(object sender,EventArgs E)
        {
            messageBox.Show("boom!");
        }

大佬总结

以上是大佬教程为你收集整理的c# – 如何停止动画WPF?全部内容,希望文章能够帮你解决c# – 如何停止动画WPF?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。