C# 在WinRT/c中以编程方式设置开始时间时无法正常工作#
我正在Windows 8应用程序中从代码隐藏中为某些内容设置动画。我有一组动画对象,每个对象都包含一个C# 在WinRT/c中以编程方式设置开始时间时无法正常工作#,c#,xaml,animation,storyboard,C#,Xaml,Animation,Storyboard,我正在Windows 8应用程序中从代码隐藏中为某些内容设置动画。我有一组动画对象,每个对象都包含一个DoubleAnimation。我调用了一个方法,该方法迭代这个集合,为每个集合创建新的情节提要对象并开始它们。无论我在情节提要上设置了BeginTime、DoubleAnimation还是两者,它们都会同时启动和运行 如何将动画延迟设定的毫秒数 foreach (AnimationObject a in queue) { Storyboard sb = new Storyb
DoubleAnimation
。我调用了一个方法,该方法迭代这个集合,为每个集合创建新的<代码>情节提要代码>对象并开始它们。无论我在情节提要上设置了BeginTime
、DoubleAnimation
还是两者,它们都会同时启动和运行
如何将动画延迟设定的毫秒数
foreach (AnimationObject a in queue)
{
Storyboard sb = new Storyboard();
sb.Duration = a.DoubleAnimation.Duration;
sb.BeginTime = a.DoubleAnimation.BeginTime;
sb.Children.Add(a.DoubleAnimation);
Storyboard.SetTarget(a.DoubleAnimation, a.Target);
Storyboard.SetTargetProperty(a.animation, a.TargetProperty);
sb.Begin();
}
我编写了一个队列,它使用了
wait Task.Delay(a.BeginTime)
,这很有效,所以我知道我正确设置了BeginTime。然而,任务延迟方法似乎不是很有效我的问题是,后来针对相同目标的情节提要
覆盖了以前的。我重新设计了我的队列,使用DoubleAnimationUsingKeyFrames
ìnstead,并将关键帧添加到存在关键帧的现有Storyboard
。现在一切都很好