Ciao a tutti,
mi trovo con una navigation:Page, ho inizializzato il mio viewmodel
e "collegato" un evento del viewmodel.
Quando l'evento viene eseguito, devo aprire una SaveFileDialog, a questo punto mi da errore "Le finestre di dialogo devono essere avviate dall'utente.".
Quindi immagino che il thread dell'evento non coincide con quello della pagina.
Come posso procedere per ottenere ciò che mi serve?
Codice esempio:
void RapportinoGiornaliero_Loaded(object sender, RoutedEventArgs e)
{
_vm = new MioViewModel();
_vm.RichiestaSalvataggio += new MioViewModel.RichiestaSalvataggioEventHandler(_vm_RichiestaSalvataggio);
DataContext = _vm;
}
void _vm_RichiestaSalvataggio()
{
SaveFileDialog saveDialog = new SaveFileDialog();
saveDialog.DefaultExt = ".pdf";
saveDialog.Filter = "Documenti|*.pdf";
Nullable<bool> dialogResult = saveDialog.ShowDialog();
if (dialogResult)
{
[...]
}
}