C#XAML城域图像动态源
我喜欢使用XAML中的一个图像控件制作简单的动画,并每隔1秒将C#XAML城域图像动态源,c#,xaml,windows-runtime,winrt-xaml,C#,Xaml,Windows Runtime,Winrt Xaml,我喜欢使用XAML中的一个图像控件制作简单的动画,并每隔1秒将图像的源切换到另一个 但是当我这么做的时候,图像在闪烁。我使用此代码(在计时器的事件处理程序中勾选): 问题出在哪里?我应该缓存位图图像吗 感谢您的帮助。尝试在xaml中声明a: <Storyboard> <ObjectAnimationUsingKeyFrames BeginTime="0:0:0" Storyboard.TargetName="ImageHolde
图像的源切换到另一个
但是当我这么做的时候,图像在闪烁。我使用此代码(在计时器的事件处理程序中勾选):
问题出在哪里?我应该缓存位图图像吗
感谢您的帮助。尝试在xaml中声明a:
<Storyboard>
<ObjectAnimationUsingKeyFrames BeginTime="0:0:0"
Storyboard.TargetName="ImageHolder" Storyboard.TargetProperty="Source">
<DiscreteObjectKeyFrame KeyTime="0:0:0"
Value="{Binding Source={StaticResource Frame1Image}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:1"
Value="{Binding Source={StaticResource Frame2Image}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:2"
Value="{Binding Source={StaticResource Frame3Image}"/>
<!-- etc -->
</ObjectAnimationUsingKeyFrames>
</Storyboard>
因此,您必须将精灵添加到静态资源中,并运行故事板。是的,但我希望不使用故事板。还有其他方法吗?在开始动画之前尝试预加载图像。使用字典
和实例预加载图像,然后通过int索引访问图像是一种好方法吗?
<Storyboard>
<ObjectAnimationUsingKeyFrames BeginTime="0:0:0"
Storyboard.TargetName="ImageHolder" Storyboard.TargetProperty="Source">
<DiscreteObjectKeyFrame KeyTime="0:0:0"
Value="{Binding Source={StaticResource Frame1Image}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:1"
Value="{Binding Source={StaticResource Frame2Image}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:2"
Value="{Binding Source={StaticResource Frame3Image}"/>
<!-- etc -->
</ObjectAnimationUsingKeyFrames>
</Storyboard>