Mam DataGridView
. W niektórych komórkach dodaję dane. Jeśli komórka, którą aktualnie edytuję, jest pusta i mam zamiar ją opuścić, zostanie wyświetlony komunikat "bla-bla-bla", a komórka w trybie edycji musi otrzymać fokus z powrotem.Jak anulować zdarzenie CellEnter/CellLeave w języku C#?
W tym celu używam CellEnter
, CellLeave
, CellEndEdit
itd. I chcę anulować te zdarzenia po sprawdzeniu wartości wprowadzonej w komórce. Ale Im noob i to nie działa. Proszę pomóż mi. Byłoby miło zobaczyć jakąkolwiek radę.
Oto wariant mojego kodu. Próbowałem z innymi wydarzeniami, ale jest bardzo naiwny naiwny.
private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
if (dataGridView1[e.ColumnIndex, e.RowIndex] == null)
{
MessageBox.Show("Empty cell!");
dataGridView1.CurrentCell = dataGridView1[e.ColumnIndex, e.RowIndex];
}
}
Pokaż nam swój kod, aby pomoc była oparta na nim. – HichemSeeSharp
@ cppanda> czy to musi być rozwiązane przez kod? Tak – stepler
Więc nie chcesz, aby użytkownik porzucił tryb edycji, czy wprowadzona wartość nie jest dla ciebie "wartością dopuszczalną"? –