c# – DataGridView复选框列“全选”性能

前端之家收集整理的这篇文章主要介绍了c# – DataGridView复选框列“全选”性能前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个带复选框列的DataGridView.我正在尝试创建一个选择/取消选择所有按钮.更改值的代码很容易,但性能非常糟糕.
for (int i = 0; i < dgv.RowCount; i++)
{
    dgv.Rows[i].Cells["Selected"].Value = _selectAll;
}

_selectAll只是一个toggle bool变量.在性能快速的情况下,有更好的方法吗?我也试过改变底层DataTable中的值.几百行仍然需要几秒钟,但大多数工作将在数千行上完成.

编辑&解决方案(2011/10/4)

主要问题在于DGV属性.一旦我设定,

dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells;

性能显着提高(每MSDN DataGridView Performance).
在此编辑中建议的解决方案也会略微提高性能.

解决方法

非常感谢,通过设置AutoSizeColumnsMode属性
dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells;

性能要好得多……

猜你在找的C#相关文章