Silverlight动画在页面导航期间崩溃应用程序

时间:2014-04-23 09:49:33

标签: c# silverlight animation windows-phone-8 mvvmcross

在WP8项目中我有2个视图 - 使用MVVMCross - GameView &的 GameOverView 即可。

我播放一些动画 - 相对于在ItemsControl中使用DataTemplate的特定用户控件 - 在 GameView 中,当切换到 GameOverView 时会崩溃我的应用。
我的动画是使用故事板在代码中执行的 当切换视图时没有播放动画时,一切都很好 当切换应用程序崩溃时正在播放动画。

当相对用户控件失去焦点或此类事情时,有没有办法告诉动画停止?

或者,当我从 GameView 导航到 GameOverView 时,我是否要手动确保动画已正确停止? 我尝试通过使用 IMvxMessenger 事件在 OnNavigatedFrom 期间手动停止动画,但在导航后停止订单。有没有办法在导航之前使用相同的线程来确保一切都停止了?或者我可以按顺序访问每个dataTemplate用户控件,强制它们停止吗? 什么是最好的策略?

任何帮助表示赞赏。 此致

1 个答案:

答案 0 :(得分:0)

我会先查看动画代码。我有一个设置,我也有一个带有简单故事板的userControl(只是连续翻转)来自xaml,我从后面的代码中设置动画。在制作动画时,我从未遇到过移动到另一个视图的崩溃。

如果你在OnNavigatedFrom中,你不能只停止动画而不是使用信使;这是一个应该真正清理所有订阅的事件。

在我的控制下,我刚刚添加了一个方法Animate(bool start)并使用.Begin()和.Stop()