[此文来源于互联网,牛C网只负责收集整理]
DataGridView虽然好用,但是如果数据量比较大的话就会出现性能的问题。网上提供的一般做法是通过虚拟模式(Virtual Mode)来加速。但是有的时候,可以通过简单的设置来加速DataGridView。
(1)使用绑定数据。就是通过加载DataTable然后通过BindingSource来和DataGridView.DataSource进行交互。
(2)不要使用AutoSizeColumnsMode.AllCells。如果这么设置,DataGridView只有等到所有的单元格都绘制完毕了才能显示。因为列的宽度是要根据这一列最长的单元格来决定的。如果改为DisplayedCells的话,那么只要显示的部分绘制完毕就可以决定列宽。
(3)可能的情况下使用AutoGenerateColumns来自动设定列。
在实际应用中,一个10000*20左右的DataGridView,原来的显示效率是100s左右,使用了上述的办法之后变成了6s。效果还是比较明显的。
当然,如果要加速更多的数据量的话,还是需要使用虚拟模式的。毕竟上述的方法只是解一时之需。
作者:gdgzboy@牛C网
地址:http://www.niuc.net/post/2147/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
牛C网推荐您再看看以下日志:
在视图状态中保存自定义的对象
ASP.NET应用程序安全控制的作用及原理
C#实现类似qq的屏幕截图程序
ASP.NET 2..0站点登录、导航与权限管理
ASP.NET技巧-正则表达式提取数字
结合JavaScript与ASP.NET Web窗体进行程序开发
ASP.NET四种页面导航方式之比较与选择
asp.net 学习日记数据分页
一个程序详细研究DataReader
Asp.net对文件夹和文件的操作类
在视图状态中保存自定义的对象
ASP.NET应用程序安全控制的作用及原理
C#实现类似qq的屏幕截图程序
ASP.NET 2..0站点登录、导航与权限管理
ASP.NET技巧-正则表达式提取数字
结合JavaScript与ASP.NET Web窗体进行程序开发
ASP.NET四种页面导航方式之比较与选择
asp.net 学习日记数据分页
一个程序详细研究DataReader
Asp.net对文件夹和文件的操作类
2进制、8进制、10进制、16进制...各种进制间的轻松转换
ASP.NET2.0中TextBox的两个有趣的属性





