我在一个WPF应用程序中有三个storyboard。
begin是单个动画,progress是重复动画,end也是单个动画。
所有的storyboard都在动画同一张图片,“progress” storyboard 在另一个线程运行查询时重复播放, “begin” storyboard在其之前播放,“end” 动画在其之后播放。
我认为这是一个简单的问题:当应用程序启动时,开始“begin”动画,然后在oncompleted事件处理程序中启动progress动画等。
但是它没有起作用:进度动画开始了,但它出现了不正常的闪烁。
我制作了一个“button1”来分析这个问题,并注意到在按钮的onclick事件处理程序中相同的方法可以工作(在begin storyboard结束后,我按下它,progress storyboard就会开始并完美地出现)。
(begin动画的FillBehavior是“Stop”:如果没有这个设置,按钮就无法工作,但是在设置之后事件处理程序仍然错误)。
有任何想法吗?
begin是单个动画,progress是重复动画,end也是单个动画。
所有的storyboard都在动画同一张图片,“progress” storyboard 在另一个线程运行查询时重复播放, “begin” storyboard在其之前播放,“end” 动画在其之后播放。
我认为这是一个简单的问题:当应用程序启动时,开始“begin”动画,然后在oncompleted事件处理程序中启动progress动画等。
但是它没有起作用:进度动画开始了,但它出现了不正常的闪烁。
我制作了一个“button1”来分析这个问题,并注意到在按钮的onclick事件处理程序中相同的方法可以工作(在begin storyboard结束后,我按下它,progress storyboard就会开始并完美地出现)。
(begin动画的FillBehavior是“Stop”:如果没有这个设置,按钮就无法工作,但是在设置之后事件处理程序仍然错误)。
private void Window_Loaded(object sender, RoutedEventArgs e)
{
begin = (Storyboard)FindResource("startanimation");
progress = (Storyboard)FindResource("progressanimation");
end = (Storyboard)FindResource("stopanimation");
begin.Completed += new EventHandler(begin_Completed);
begin.Begin();
}
void begin_Completed(object sender, EventArgs e)
{
progress.Begin(); //not works
}
private void button1_Click(object sender, RoutedEventArgs e)
{
progress.Begin(); //works
}
有任何想法吗?