dataGridView移除多行(删除多行)

dataGridView移除多行(删除多行)

以下步骤不是从数据库移除多行, 只是dataGridView移除多行
 

方法一:
int row = dataGridView1.SelectedRows.Count;
if (row == 0)
 {
       MessageBox.Show("没有选中任何行", "Error");
       return;
}
else if (MessageBox.Show("确认删除选中的" + row.ToString() + "条记录吗?", "请确认", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
     int selectcount = dataGridView1.SelectedRows.Count;
     while (selectcount > 0)
    {
        if (!dataGridView1.SelectedRows[0].IsNewRow)
          dataGridView1.Rows.RemoveAt(dataGridView1.SelectedRows[0].Index);
        selectcount--;
     }

}
 

方法二:
int row = dataGridView1.SelectedRows.Count;
if (row == 0)
 {
       MessageBox.Show("没有选中任何行", "Error");
       return;
}
else if (MessageBox.Show("确认删除选中的" + row.ToString() + "条记录吗?", "请确认", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
     for (int i = 0; i < dataGridView1.SelectedRows.Count; i++)
     {
           dataGridView1.Rows.Remove(dataGridView1.SelectedRows[i]);//有时会报错,显示:索引超出范围。必须为非负值并小于集合大小。
           //dataGridView1.Rows.RemoveAt(dataGridView1.SelectedRows[i].Index);//语句也可以这样写
           i--;
      }
}

你可能感兴趣的:(C#,dataGridView,删除)