在WPF中,是否有任何与网格列大小调整相关的已知性能问题?
我有一个应用程序,我需要在一个列中做一些特定的事情,但是对于所有不同的解决方案,我发现列的大小调整会变慢。当我的列表中的元素通常超过1000个时,这就适用了,但是我认为这对于WPF来说不算太多。所以,一般的问题是,您是否经历过列大小调整缓慢的过程,以及是否找到了解决方案?是什么引起的?
有关我的特定案例的更多详细信息:
我的列中可以有两种不同的东西:组合框或文本块。组合框应填充整个列,并随后调整列大小,单击带有文本块的列的空白区域应选择该行。这就是问题所在。对于所有的解决方案,我必须这样做,列的大小调整会变慢。我找到的使调整平滑的唯一方法是在其外部添加一个stackpanel,其中orientation=“horizontal”,但这样我就无法实现上面描述的样式。
以下是一些观察结果:
-
将style horizontalContentAlignment=“Stretch”添加到列表项中会使组合框可拉伸,文本块可单击,但列的调整速度较慢。
-
将background=“transparent”添加到stackpanel或插入其中的元素也解决了问题,但会使调整速度变慢。
-
添加一个具有property orientation=“horizontal”的外部stackpanel可以平滑地调整大小,但我无法应用所描述的样式。