114 messaggi dal 09 luglio 2009
Buon pomeriggio a tutti. Purtroppo ho una ulteriore domanda da postarVi e spero di poter, come sempre, avere l'opportunità di ricevere risposte risolutive.

Ho un piccolo problema relativo ad una procedura che non so come affrontare.

La mia applicazione WPF prevede l'inserimento di un carico di magazzino (vi risparmio dettagli inutili). All'interno di questa finestra vi è una combobox che fa selezionare il fornitore. Ora, io vorrei aprire una nuova finestra proponendo all'utente una lista dei fornitori anagrafati e tramite un click riportarmi il risultato il risultato della selezione nella combobox della prima finestra.

Purtroppo però sono bloccato e non so come fare.

Utilizzo l'approccio MVVM e Command.

Spero di poter trovare qualcuno che possa aiutarmi.
Eventualmente posso postarVi parte del codice.

Attendo Vs e vi ringrazio in anticipo
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
la soluzione potrebbe esser quella di usare lo stesso ViewModel per entrambe le view. Cioè, la proprietà DataContext di entrambe le finestre dovrà essere valorizzata con la stessa istanza del ViewModel.
La seconda finestra conterrà un bottone "OK", la cui proprietà Command sarà in binding con un ICommand di tale ViewModel.
Inoltre, tutto ciò che si vede in questa seconda finestra sarà anch'esso in binding con il ViewModel (ad esempio le proprietà ItemsSource e l'eventuale SelectedValue di una listview) in modo che il viewmodel sappia ciò che è stato selezionato quando si clicca il bottone "OK".

In questo esempio, invece, si usa un viewmodel apposito per la seconda finestra. Il primo viewmodel legge il risultato da una proprietà del secondo viewmodel, quando la finestra viene chiusa.
http://www.c-sharpcorner.com/article/dialogs-in-wpf-mvvm/

ciao,
Moreno

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.