В обработчике событий для CellValueChanged для определенного условия я хочу, чтобы фокус оставался в ячейке и очищал ее содержимое. Происходит то, что фокус (курсор) находится в следующей ячейке, когда обработчик заканчивает свою работу. Он должен находиться в той же ячейке, которая вызвала событие.
MyGrid.CellValueChanged -= new DataGridViewCellEventHandler(CellValueChanged);
if (condition)
{
MyGrid.Rows[e.RowIndex].Cells["ColumnName"].Value = "";
MyGrid.CurrentCell = MyGrid["ColumnName", e.RowIndex];
MyGrid.BeginEdit(true);
return;
}
....