private void dataGridView1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Delete)
{
int maxrow = 0; //记录DataGridView控件中最大单元格的行数
int maxcol = 0; //记录DataGridView控件中最大单元格的列数
for (int i = 0; i < dataGridView1.SelectedCells.Count; i++)
{
if (dataGridView1.SelectedCells[i].RowIndex > maxrow)
maxrow = dataGridView1.SelectedCells[i].RowIndex;
if (dataGridView1.SelectedCells[i].ColumnIndex > maxcol)
maxcol = dataGridView1.SelectedCells[i].ColumnIndex;
}
int minrow = maxrow; //记录DataGridView控件中最小单元格的行数
int mincol = maxcol; //记录DataGridView控件中最小单元格的列数
for (int j = 0; j < dataGridView1.SelectedCells.Count; j++)
{
if (dataGridView1.SelectedCells[j].RowIndex < minrow)
minrow = dataGridView1.SelectedCells[j].RowIndex;
if (dataGridView1.SelectedCells[j].ColumnIndex < mincol)
mincol = dataGridView1.SelectedCells[j].ColumnIndex;
}
for (int i = 0; i < maxrow - (minrow - 1); i++)
{
for (int j = 0; j < maxcol - (mincol - 1); j++)
{
dataGridView1.Rows[i + minrow].Cells[j + mincol].Value = "";
}
}
}
}
{
if (e.KeyCode == Keys.Delete)
{
int maxrow = 0; //记录DataGridView控件中最大单元格的行数
int maxcol = 0; //记录DataGridView控件中最大单元格的列数
for (int i = 0; i < dataGridView1.SelectedCells.Count; i++)
{
if (dataGridView1.SelectedCells[i].RowIndex > maxrow)
maxrow = dataGridView1.SelectedCells[i].RowIndex;
if (dataGridView1.SelectedCells[i].ColumnIndex > maxcol)
maxcol = dataGridView1.SelectedCells[i].ColumnIndex;
}
int minrow = maxrow; //记录DataGridView控件中最小单元格的行数
int mincol = maxcol; //记录DataGridView控件中最小单元格的列数
for (int j = 0; j < dataGridView1.SelectedCells.Count; j++)
{
if (dataGridView1.SelectedCells[j].RowIndex < minrow)
minrow = dataGridView1.SelectedCells[j].RowIndex;
if (dataGridView1.SelectedCells[j].ColumnIndex < mincol)
mincol = dataGridView1.SelectedCells[j].ColumnIndex;
}
for (int i = 0; i < maxrow - (minrow - 1); i++)
{
for (int j = 0; j < maxcol - (mincol - 1); j++)
{
dataGridView1.Rows[i + minrow].Cells[j + mincol].Value = "";
}
}
}
}