gpt4 book ai didi

wpf - wpf 应用程序中的多个 Storyboard

转载 作者:行者123 更新时间:2023-12-04 15:57:37 25 4
gpt4 key购买 nike

我在 wpf 应用程序中有三个 Storyboard。

开始是单个动画
进步是一个重复的动画
结束也是一个单一的动画

所有 Storyboard 动画相同的图像,“进度” Storyboard 重复(当另一个线程中的查询正在运行时),“开始” Storyboard 在它之前,“结束”动画在它后面。
我认为这是一个简单的问题:当应用程序启动时,启动“开始”动画,然后在 oncompleted 事件处理程序中启动进度动画等。

但它不起作用:进度动画开始了,但它出现不正确(奇怪的闪烁)。

我做了一个“button1”来分析这个,然后我注意到按钮的 onclick 事件处理程序中的相同方法是有效的(在开始 Storyboard结束后,我按下它,并且进度 Storyboard开始并完美出现)。
(开始动画的填充行为是“停止”:没有这个设置按钮不起作用,但设置后事件处理程序仍然是错误的)

    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
}

任何的想法?

最佳答案

尝试这个:

void begin_Completed(object sender, EventArgs e)      
{
this.Dispatcher.Invoke(
System.Windows.Threading.DispatcherPriority.Normal,
new Action(
delegate()
{
progress.Begin();
}
));
}

关于wpf - wpf 应用程序中的多个 Storyboard,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11339471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com