gpt4 book ai didi

WPF DataGrid v 快,分组 v 慢。如何在不使用分组的情况下显示组行

转载 作者:行者123 更新时间:2023-12-04 21:11:50 25 4
gpt4 key购买 nike

我有一个 WPF DataGrid,它显示超过 60 列和任何多达 10000 行的数据集。 DataGrid 加载完整的数据集 很快并很好地处理它们。

colA colB colC colD colE ... 

1 2 3 4 5
5 6 7 8 9
2 3 4 3 4
1 2 3 4 5
5 6 7 8 9
2 3 4 3 4

然而,行被分成组。我需要显示一个文本字符串的组标题,并能够展开/折叠组。

我可以对 DataGrid 使用分组,其中 看起来不错但是是 难以置信的慢 最初显示大组。
 colA colB colC colD colE ... 
^ group title A
1 2 3 4 5
5 6 7 8 9
2 3 4 3 4
^ group title B
1 2 3 4 5
5 6 7 8 9
2 3 4 3 4

我可以通过添加一个包含组描述的额外列在 DataGrid 外部对自己进行分组。然后我可以通过更改提供给网格的数据集来折叠/展开任何组。即 非常快 ,但它 看起来很垃圾因为它浪费了很多空间,尤其是对于长组标题。
group          colA colB colC colD colE ...  
group title A
1 2 3 4 5
5 6 7 8 9
2 3 4 3 4
group title B
1 2 3 4 5
5 6 7 8 9
2 3 4 3 4

我想要的是两全其美,即 又快又漂亮 ,
能够像 DataGrid 分组一样显示数据,
但要在外部进行分组。
  colA colB colC colD colE ... 
^ Very long comment about the data ...
1 2 3 4 5
5 6 7 8 9
2 3 4 3 4
^ Another arbitrarily long comment...
1 2 3 4 5
5 6 7 8 9
2 3 4 3 4

知道如何以这种方式显示我的组标题吗?

最佳答案

这是一个老问题,但是我在这里添加了答案以供将来引用:

从 .Net 4.5 开始,微软增加了 IsVirtualizingWhenGrouping属性(property)。设置 DataGrid 的这个属性至 True解决了这个问题。

<DataGrid VirtualizingPanel.IsVirtualizingWhenGrouping="True">
来源: This blog (显然这个博客不再可用)

关于WPF DataGrid v 快,分组 v 慢。如何在不使用分组的情况下显示组行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4155424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com