c# - 使用大数据填充 DataGridView 时性能低下

标签 c# performance datagridview

我正在使用 BindingSource 控件 ( reference here ) 来填充我的 DataGridView 控件。上面有大约 1000 多条记录。我正在使用线程来这样做。 DataGridView 在这种情况下执行速度非常慢。

我尝试将 DoubleBuffered 属性设置为 true,将 RowHeadersWidthSizeMode 设置为禁用,将 AutoSizeColumnsMode 设置为 none。但仍然是相同的行为。

如何提高网格的性能?

最佳答案

如果您有大量的行,例如 10,000 行或更多, 为避免性能泄漏 - 在数据绑定(bind)之前执行以下操作:

dataGridView1.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.EnableResizing; 
// or even better, use .DisableResizing. Most time consuming enum is DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders

// set it to false if not needed
dataGridView1.RowHeadersVisible = false;

数据绑定(bind)后,您可以重新启用。

关于c# - 使用大数据填充 DataGridView 时性能低下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10226992/

相关文章:

javascript - 在nodejs中定义模块变量的最佳方法是什么?

mysql - 如何充分利用mysql中的索引?

c# 如何从 List<T> 创建 SortableBindingList

C# winforms gridview 以编程方式绑定(bind)数据后排序

C#线程图像处理

c# - ConfigurationManager.ConnectionStrings ["XXX"] 返回 null

sql-server - SQL索引问题: Why does SQL Server prefer this NONCLUSTERED index to a CLUSTERED one?

c# - 删除dataGridView的最后一个空行

c# - 从列表框中删除项目会导致灾难性故障?

C#:加入两个列表,不包括重复项