有没有办法加快DataGridView删除?

时间:2013-09-25 18:44:10

标签: c# datagridview row

我正在使用大量数据,我将它们存储在DataGridView中,以便用户可以在应用程序中查看该数据并在将其保存到数据库之前对其进行操作。在用户点击“保存”按钮之前,不会将任何内容保存到数据库中。

用户可以通过按删除键删除多行,如果它只有几行就可以正常工作。如果他们想删除几千怎么办?删除大量行需要花费太长时间。

这就是我目前正在删除它们的方式:

  foreach (DataGridViewRow row in dgv.SelectedRows)
       dgv.Rows.Remove(row);

有没有什么方法可以一举删除所有这些行?基本上类似于Clear函数,但我给它一个要删除的行列表。

1 个答案:

答案 0 :(得分:-1)

尝试使用SuspendLayout和ResumeLayout禁用GUI更新:

dgv.SuspendLayout();
foreach (DataGridViewRow row in dgv.SelectedRows)
{
    dgv.Rows.Remove(row);
}
dgv.ResumeLayout();