2

我目前只ListView在 WPF 中使用 s 来显示不需要编辑的数据。但我不太喜欢 的风格,ListView而且它似乎缺少一些功能,比如让 aGridViewColumn填充剩余空间。DataGrid所以我想知道如果我开始使用 non-editable s会对性能产生什么影响。

两者之间是否存在很大的性能差异?

4

1 回答 1

3

ListView在 WPF 中是一个轻量级控件:提供的某些功能DataGridView不可用。有关更多信息,请参阅此 Stackoverflow 答案。如果您对功能不满意,ListView那么DataGridView是解决您问题的另一种选择。

请记住,DataGridView控件在加载时会占用一些额外的内存空间。ListView但是和控件占用的内存差异DataGridView应该不大。一些内存分析工具(如 .Net 内存分析器)可以看到此内存大小。

一些第三方控件存在内存泄漏问题,这会影响应用程序的整体性能,但 Microsoft 库中的所有控件都针对性能和内存进行了优化。

对于少量数据(<100 行),您感觉不到这些控件之间的任何性能差异。但是,如果您的应用程序尝试显示大量数据(> 1000 行),则可能会导致滚动等操作延迟:这就是VirtualizationStackPanel实现所调用的功能的原因。使用它可以解决滚动问题。

于 2013-11-12T09:05:16.453 回答