Risolto, incredibile quanto mi ha fatto penare.
Se il DataGridView ha AllowUserToAdd = true capita un anomalia in un caso e cioè quando la DataGridView contiene un solo elemento.
DataGridView avrà come prima riga il record popolato con i dati e come seconda riga una riga vuota per inserire i dati.
Cancellando la prima riga il focus andrà nella riga vuota e il dataSource non capirà che c'è stato un cambiamento perchè conta sempre una sola riga.
In buona sostanza, per risolvere il mio problema ho impostato la proprietà AllowUserToAdd = false, così avrò il numero di righe = al numero di righe popolate e l'evento UserDeletedRow verrà invocato ogni volta che proverò ad eliminare un record.
Spero di essere stato di aiuto a qualcuno perchè questo tipo di problema mi ha perseguitato per quasi un mese.
OfflineMan

Rispondi quotando