Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WPF-设置图像源更改的动画_Wpf_Image_Animation_Keyframe - Fatal编程技术网

WPF-设置图像源更改的动画

WPF-设置图像源更改的动画,wpf,image,animation,keyframe,Wpf,Image,Animation,Keyframe,我是WPF的新手,但我认为我需要做的是相对简单的。我需要创建一个图像“动画”,在这里我每0.25秒更改一个图像源 我有一个名为“动画”的文件夹,里面有1到25PNG的实时图像(名为1.png,2.png…25.png)。每个图像都与动画的不同帧相关 我想写xaml,将图像从1更改为2,从2更改为3,每.25秒更改3到4,等等,直到它到达第25个图像,然后它应该循环回到开始 我很可能需要写一些c#来完成这项工作。我希望它运行在一个线程上,该线程可以与UI交互(如更新图像),但不会阻止UI线程 提前

我是WPF的新手,但我认为我需要做的是相对简单的。我需要创建一个图像“动画”,在这里我每0.25秒更改一个图像源

我有一个名为“动画”的文件夹,里面有1到25PNG的实时图像(名为1.png,2.png…25.png)。每个图像都与动画的不同帧相关

我想写xaml,将图像从1更改为2,从2更改为3,每.25秒更改3到4,等等,直到它到达第25个图像,然后它应该循环回到开始

我很可能需要写一些c#来完成这项工作。我希望它运行在一个线程上,该线程可以与UI交互(如更新图像),但不会阻止UI线程


提前谢谢

一个纯XAML解决方案看起来可能是这样的,当然有不同的图像和时间

<Image>
    <Image.Triggers>
        <EventTrigger RoutedEvent="Loaded">
            <BeginStoryboard>
                <Storyboard RepeatBehavior="Forever">
                    <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Source"
                                                   Duration="0:0:2">
                        <DiscreteObjectKeyFrame KeyTime="0:0:0">
                            <DiscreteObjectKeyFrame.Value>
                                <BitmapImage UriSource="C:\Users\Public\Pictures\Sample Pictures\Koala.jpg"/>
                            </DiscreteObjectKeyFrame.Value>
                        </DiscreteObjectKeyFrame>
                        <DiscreteObjectKeyFrame KeyTime="0:0:1">
                            <DiscreteObjectKeyFrame.Value>
                                <BitmapImage UriSource="C:\Users\Public\Pictures\Sample Pictures\Penguins.jpg"/>
                            </DiscreteObjectKeyFrame.Value>
                        </DiscreteObjectKeyFrame>
                    </ObjectAnimationUsingKeyFrames>
                </Storyboard>
            </BeginStoryboard>
        </EventTrigger>
    </Image.Triggers>
</Image>