/// <summary> /// DataGridView KeyDown: removed selected row if delete key is pressed /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dbDataGridView_KeyDown(object sender, KeyEventArgs e) { try { OMETrace.WriteFunctionStart(); if (e.KeyCode == Keys.Delete) { if (dbDataGridView.Rows.Count > 0) { //Deletes the multiple selected rows if (dbDataGridView.SelectedRows.Count > 1) { List <DataGridViewRow> selectedRows = new List <DataGridViewRow>(); int rowCount = dbDataGridView.Rows.Count; for (int i = 0; i < rowCount; i++) { if (dbDataGridView.Rows[i].Selected) { selectedRows.Add(dbDataGridView.Rows[i]); } } for (int i = 0; i < selectedRows.Count; i++) { dbDataGridView.Rows.Remove(selectedRows[i]); } selectedRows.Clear(); } else //Deletes single selected rows { dbDataGridView.Rows.RemoveAt(dbDataGridView.SelectedCells[0].OwningRow.Index); } e.Handled = true; } } else { e.Handled = false; } OMETrace.WriteTraceBlockStartEnd(); } catch (Exception oEx) { LoggingHelper.ShowMessage(oEx); } }