94 messaggi dal 09 novembre 2005
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)
  {
    [...]
  }
}
Ciao,
putroppo non è un problema di thread ma di una restrizione di sicurezza per la quale una SaveFileDialog può essere aperta solo su specifica -azione- dell'utente, click o gesture, per intendersi..

Alessio Leoncini (SilverlightItalia.com)
.NET Developer, Interactive Designer, UX Specialist, Trainer @ 5DLabs.it
94 messaggi dal 09 novembre 2005
quindi in SL4 SaveFileDialog e MVVM non vanno d'accordo! Sob!

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.
Community
Ultimi messaggi
UTENTI ONLINE
In primo piano

I più letti di oggi

Media
In evidenza
MISC