Buongiorno di nuovo a chiedere il vostro aiuto per risolvere un problema che non mi fa andare avanti, vi riepilogo il tutto:
1) Ho una DGV che viene "riempita" al Load del form
2) Le operazioni di Update ed Insert sono richiamate dall'evento RowValidated, quindi quando cambio riga se si sono verificate alcune condizioni lui capisce se deve eseguire un Update o un'Insert.
Fin qui tutto ok, il problema si presenta se subito dopo aver aggiunto una riga decido di cancellarla. Per cancellarla, attraverso l'evento CellClick rilevo l'ID del record e con l'evento UserDeletingRow avvio il Delete. Ovviamente se la riga era già presente è completa anche di ID, se invece è appena stata creata l'ID non è presente ancora nel DGV percui ho esigenza di aggiornare la stessa.
Per aggiornarla l'unica soluzione che mi viene in mente è a) cancellare tutta la DGV con DGV.Rows.Clear e riepirla richiamandomi nuovamente il select.
Ecco finalmente il problema, DGV.Rows.Clear crea un eccezione se proviene da alcuni eventi tra cui l'evento RowValidated e quindi tutto il mio ragionamento va a farsi friggere.
Domanda: dove sbaglio ? ho alternative diverse all'uso di clear
Grazie