【发布时间】:2012-08-10 12:40:51
【问题描述】:
我有一个带有彩色动画的按钮和一个点击事件。 coloranimation 在 1 秒内将按钮的背景从灰色变为橙色,然后将其反转。在点击事件中,我加载了很多东西(大约需要 4-5 秒)。
我的问题是,当我单击按钮时动画开始,但在几毫秒后立即停止(单击事件开始),并且在单击事件完成后,它也完成了动画。 我希望先完成动画,然后执行点击事件。
我搜索了很多,发现动画完成事件并且它正在工作,但是是否有可能为此制定一个基本解决方案,我可以将其用于我程序中的所有按钮?
感谢您提前回复!
BR, 佐利
编辑:---------------------------------------------
做这样的事情:
PreviewMouseDown()
{
AnimateTheButton();
//Wait for the animation to be finished
}
【问题讨论】:
-
哦,对不起,我误解了这个问题。那么也许你可以在 PreviewMouseUp 事件触发时禁用动画?
-
我不想禁用 :) 。我想先为按钮设置动画,然后执行点击事件:)。现在它启动了动画,但立即启动了点击事件中的方法,并停止了动画,这是什么问题:( .
-
哦,麻烦了 :) 每个动画都提供Completed 事件。将您的处理程序移到那里
-
是的,完成的事件效果很好:),但我想要一个基本的解决方案,所以我只知道,我必须在动画之后调用按钮的点击事件,但我没有更多在高级班。我试图做这样的事情: PreviewMouseDown() { AnimateTheButton(); } ButtonClickEvent() { //等待动画完成 //做按钮必须做的事情:) }
标签: wpf animation button click