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--;
}
}
以下步骤不是从数据库移除多行, 只是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--;
}
}