WPF如何优化布局/渲染周期?

WPF如何在高度易变的应用程序中优化布局/渲染周期?

例如,假设我快速连续两次使自定义控件无效,它会渲染两次吗? 当数据/属性更新速率比主渲染速率快时,是否存在性能问题?

根据我的经验,我可以说,如果它快速通过,它就不会呈现两次。 我不是百分百肯定,但这就是为什么我认为这个:

我们有一个非常繁重的应用程序(成千上万的控件),它是一个飞机驾驶舱,所有在wpf,每个按钮,开关,屏幕可以通过手势或鼠标移动。

驾驶舱为10000像素×10000像素,并实现放大/缩小(使用鼠标滚轮),单击鼠标右键时平移。

在优化之前,它非常迟缓,缓慢,因此每个“缩放”步骤或“平移”步骤大约需要1秒

如果我缩放1次(例如缩放* 1.2),则需要1秒钟

如果我缩放10次(缩放* 1.2 X 10),它不需要10秒,它可能需要2秒,具体取决于您滚动的速度,并且它不渲染每个“缩放步骤”它只渲染最后一个。 ..