我正在使用.NET 4 WPF DataGrid,并且在使用大量列时注意到很差的垂直滚动性能。这里是我做过什么来测试这个:WPF .NET 4 DataGrid列性能
- 启用虚拟化(VirtualizingStackPanel.IsVirtualizing =“真” VirtualizingStackPanel.VirtualizationMode =“回收”)
- 嵌入在DataGrid中简单的网格布局,也没有其他控件在这个窗口
- 列没有自定义格式,没有图像 - 只是简单的文字
- 我在一台相当不错的电脑上运行。 WIN7(64位)与8GB的内存和Radeon 7800系列卡
- 测试与穿孔不显示什么不好之类的软件渲染四核心3.2gz等
下面是一些结果:
- 100行×5周的cols:平滑滚动
- 100,000行×5周的cols:平滑滚动
- 100行×75个COLS:滚动性能很差
- 1 00,000行×75列:完全冻结
当我有大量列(〜75-100)时,我该如何改进垂直滚动性能?
感谢
75列是否有意义,即使它工作完美无瑕?我建议默认情况下只使用重要的列,并在网格侧面显示按字母顺序排列的可选列作为复选框,可以根据用户的要求显示。 – doblak 2012-07-07 23:16:14