2009-03-26 20 views
6

Passaggi del bambino in rotazione ... Ho un modulo con una griglia di dati associata a un tavolo. Ho alcune caselle di testo sul modulo associato alla tabella [colonne], così come faccio scorrere la griglia, le caselle di testo mostrano i dati corrispondenti.WinForms C# DataGridView forzare l'aggiornamento

Vado a una "modalità di modifica" delle caselle di testo e cambio il contenuto e premo un pulsante di salvataggio. La griglia non aggiorna il contesto modificato finché non faccio fisicamente clic nella cella che forza una chiamata alle tabelle Eventi OnChanging e OnChanged ...

Come posso FORCE qualunque evento per "svuotare" la tabella alla fine di la mia modifica e l'ho aggiornata nella vista datagrid.

Grazie

risposta

10

Hai provato a chiamare il metodo Invalidate di DataGridView?

this.dataGridView1.Invalidate(); 
+0

Il mio male. L'evento "Click" del pulsante del livello non veniva mai attivato direttamente poiché avevo utilizzato una classe personalizzata con un comportamento del metodo predefinito. Dopo averlo regolato secondo necessità, funziona perfettamente ... Tuttavia, ho fatto InvalidateROW per l'unico record in questione. Grazie – DRapp

1

Stai utilizzando un BindingSource? In tal caso, chiama il suo metodo EndEdit sull'evento Leave del riquadro di testo.

+0

Nessun impatto. Sia la griglia (ovviamente), sia le caselle di testo sono associate all'istanza DataTable, ma non riesco a forzare l'evento "OnChanging"/"OnChanged" delle tabelle, che è ciò che accade quando faccio nuovamente clic sulla griglia manualmente dopo aver salvato un modificare. – DRapp

Problemi correlati