0
CellValueChangedのイベントハンドラでは、特定の条件に対して、フォーカスをセル内に残してコンテンツをクリアします。何が起こっているのかは、ハンドラが作業を終えたときにフォーカス(カーソル)が次のセルにあることです。イベントを引き起こしたのは同じセル内にある必要があります。CellValueChangedハンドラ(.NET)内のDataGridView内の同じセルにフォーカスを置くことができません
MyGrid.CellValueChanged -= new DataGridViewCellEventHandler(CellValueChanged);
if (condition)
{
MyGrid.Rows[e.RowIndex].Cells["ColumnName"].Value = "";
MyGrid.CurrentCell = MyGrid["ColumnName", e.RowIndex];
MyGrid.BeginEdit(true);
return;
}
....