如何在同一个UserControl?上使用动画和MultiScaleImage控件
我发现,如果将MultiScaleImage和动画放在同一个UserControl上,那么CPU的使用率总是很高。是MultiScaleImage控件错误吗?,这是一个示例项目。(只是一个网格、MultiScaleImageControl和一个衰落的矩形)
为什么CPU使用率高?在动画播放时,UserControl触发LayoutUpdated事件,MultiScaleImage捕获该事件并重新绘制自己。因此,如果MaxFrameRate=60 (默认值),那么MultiScaleImage每秒钟重新绘制自己~60次(MultiScaleImage.LayoutUpdated被触发~60次),导致较高的CPU使用率:
MultiScaleImage不应该只在SizeChanged事件上重绘itsef (或者重新计算CPU密集型的内容)吗?否则,如果我不能使用动画,为什么要使用这个控件?
发布于 2009-11-02 14:12:27
现在看来,它是一个已知的错误 :)
https://stackoverflow.com/questions/1448719
复制相似问题