为什么ShowGridLines这么慢?

时间:2013-07-13 19:15:36

标签: c# .net wpf performance

我注意到在ShowGridLines上启用Grid会导致性能大幅下降。

我在Grid内有一个ScrollViewer。当我手动滚动时,应用程序运行正常。但是,如果我以编程方式滚动,使用计时器顺利滚动,则在ShowGridLines打开时运行速度非常慢。

ShowGridLines 关闭,滚动按预期完成不到1/2秒。使用ShowGridLines 时,滚动需要2-5秒,并且无法预测。

为什么ShowGridLines会导致性能下降?手动滚动时为什么不这样做?有办法解决这个问题吗?

1 个答案:

答案 0 :(得分:6)

ShowGridLines属性未针对运行时进行优化,因为它仅用作设计时工具。

From the documentation:

  

启用网格线会在所有元素周围创建虚线   在网格内。由于此属性,只有虚线可用   旨在作为调试布局问题的设计工具,而不是   旨在用于生产质量代码。如果你想要内线   一个网格,将网格中的元素设置为具有边框。