我已经写了一个控件,它使恒星形成、点数和每个点的长度都可以通过依赖属性进行配置。我可以将它们绑定到Slider控件,这一切都能工作。
现在,我写了一种行为,将这个星型控件“注入”到加载控件的视觉树中,然后,在代码中,制作一个动画,使该恒星像卡通闪光灯一样生长和消失。
我的动画没有运行。Storyboard.Completed事件会触发,但是在页面加载时,从不会在初始设置之后命中正在动画的依赖项属性的更改处理程序中的断点。
我正在使用几个DoubleAnimation实例。
(这是问答,3小时后我就解决了)
发布于 2014-11-04 18:35:06
您需要在您的EnableDependentAnimation上设置DoubleAnimation属性。
如果动画系统确定动画可能导致UI中的性能差,则不是所有您创建的自定义动画都可以在Windows运行时应用程序中默认运行。系统确定可能有性能影响的动画称为依赖动画。它是依赖的,因为动画的时钟是直接针对UI线程工作的,而UI线程也是主动用户输入和其他更新试图将运行时更改应用到UI的地方。在UI线程上消耗大量系统资源的依赖动画会使应用程序在某些情况下显得没有响应能力。如果动画导致布局更改或以其他方式可能影响UI线程的性能,则通常需要显式启用动画才能看到它运行。这就是特定动画类上的EnableDependentAnimation属性的作用所在。有关更多信息,请参见独立动画。
很容易被发现。幸运的是,你在这一天选择了RTFM,否则你可以写你自己的计时器和东西,迫使所有其他的工作在聪明的明星控制没有被浪费。
https://stackoverflow.com/questions/26742483
复制相似问题