C#datagrid vs DevExpress XtraGrid,速度明智

时间:2009-04-28 15:12:53

标签: c# datagrid

我有一个程序可以将10,000行加载到数据网格中,并且数据网格可能很慢渲染/绘制,偶尔也不会显示,你可以告诉它已经加载了数据但是网格变成了空白。我正在考虑用DevExpress XtraGrid替换datagrid,有没有人使用过它,我可以期待它更快地渲染/绘制吗?

由于

PS这是一个win form应用程序,实际上可能不到10,000行但可以说很多。我怀疑我们需要使用分页吗?

5 个答案:

答案 0 :(得分:3)

首先,确保您使用GridView

Virtual Mode

来自Data Display Modes in the GridView Control

  

虚拟模式的主要用途   ......是为了优化绩效   与大量的互动时   数据

MSDN有a tutorial to get you started ...

答案 1 :(得分:3)

我们使用具有数十万行和几十列的标准DataGridView,具有即时性能,完全没有问题。在虚拟模式下。使用虚拟模式。

http://msdn.microsoft.com/en-us/library/2b177d6d.aspx

答案 2 :(得分:1)

我的第一个自发思想是,哪个网格更快更重要,因为用户界面中的网格中的10000行本身就感觉像是错误。但是我再一次不知道应用程序做了什么,所以它在使用它的上下文中可能有意义......

答案 3 :(得分:1)

任何正在寻找标准数据网格的替代品的人都应该尝试使用SourceGrid,它是免费的,而且做得很好。

答案 4 :(得分:0)

我很确定你不会注意到切换会带来显着的改善。我认为问题在于你正在推送到网格中的大量数据(因此直到浏览器)。

您可以分页这些数据,还是所有10000行都必须在页面上?如果是后者,我会考虑使用转发器控制。如果分页是一个选项,我建议将分页推送回数据源。

两者都应该为你带来不错的改善。

第三方网格可以更容易地进行ajax更新和数据库端分页,但是每个网格都有一个很大的学习曲线,如果你想在普通的旧网站上做到这一点,那么制定正确的查询就不那么难了。