PDA

View Full Version : [WPF] Aggiornare il datagrid dopo update nel database


robertino_salemi
03-03-2015, 15:59
Ciao,

nella mia applicazione, ho due botton per modificare il valore di una property degli oggetti della mia collection in binding con il datagrid.

Sul click:

- eseguo un get degli item del datagrid;

- Modifico il valore di una proprietą degli oggetti della mia collezione

- Aggiorno questo valore sul database

- Se l'aggiornamento mi restituisce "True", eseguo:

dgPlan.Items.Refresh ();

ma la collection sul datagrid non visualizza i nuovi valori.

Se io lancio nuovamente la ricerca, vengono mostrati i nuovi valori.

Dove potrebbe essere l'errore?

Grazie.

lishi
03-03-2015, 20:57
Se guardi help non direi che la funzione non serva a quelli

Di solito puoi forzare aggiornamento reimpostando il ItemSource.

Altrimenti nei oggetti che bindi alla lista implementi INotifyPropertyChanged e automaticamente prendono il valore.

Anche se ovviamente cambierebbero subito di valore appena li modifichi, non dopo che il aggiornamento su db ha avuto successo.

robertino_salemi
04-03-2015, 08:45
Eh lo so, ma non va...

Forse sarebbe pił corretto risolvere con:

dgPlan.ItemsSource = null;
dgPlan.ItemsSource = yourCollection;


Dato che comunque la griglia viene visualizzata tramite dei filtri di ricerca, nel mio caso ho comunque risolto rilanciando la ricerca! :D

RaouL_BennetH
05-03-2015, 10:04
O altrimenti potresti implementare per la tua sorgente dati una ObservableCollection e bindare quest'ultima al datagrid .

robertino_salemi
05-03-2015, 11:50
O altrimenti potresti implementare per la tua sorgente dati una ObservableCollection e bindare quest'ultima al datagrid .

Uhm, vedo di documentarmi in merito. :D