WPF .NET 4 DataGrid列性能

Rhi*_*ino 3 wpf performance datagrid

我正在使用.NET 4 WPF DataGrid,并在使用大量列时注意到垂直滚动性能较差.这是我做的测试:

  1. 启用虚拟化(VirtualizingStackPanel.IsVirtualizing ="True"VirtualizingStackPanel.VirtualizationMode ="Recycling")
  2. 将DataGrid嵌入到简单的Grid布局中,此窗口中没有其他控件
  3. 列没有自定义格式,没有图像 - 只是简单的文本
  4. 我在一台非常好的电脑上运行.win7(64位),四核3.2gz,8GB ram和radeon 7800系列卡
  5. 使用Perforator进行的测试不会像软件渲染等那样显示任何不良内容

以下是一些结果:

  • 100行x 5列:平滑滚动
  • 100,000行x 5列:平滑滚动
  • 100行x 75列:非常差的滚动性能
  • 100,000行x 75列:完全冷冻

当我有大量列(~75 - 100)时,我该怎么做才能提高垂直滚动性能?

谢谢

kev*_*aub 5

您缺少两个非常重要的属性:

启用它们,看看是否有所作为.它应该有所帮助.

我有大约20个左右的列,大约有2,500行,我没有看到性能问题,但75列确实看起来很多.您可能需要调查在标题中添加右键单击启用/禁用列(类似于excel).