.NET Winform modulo personalizzato - ha bisogno di tornare DialogResult o in qualche modo prevenire eventi asincroni

StackOverflow https://stackoverflow.com/questions/3693337

  •  02-10-2019
  •  | 
  •  

Domanda

Ho una forma che richiama un form figlio personalizzato. Il form figlio è fondamentalmente una finestra di popup che ottiene alcuni dati dell'utente.

Voglio che il form padre per elaborare informazioni restituite dalla forma del bambino.

Il problema è che il form padre sta chiamando il Bambino, e non è in attesa di una risposta.

Idealmente, vorrei fare la forma Bambino restituire un DialogResult. Funzionalmente, questo è chiaro quello che sta succedendo (tanto più che l'utente ha la possibilità di annullare il controllo figlio) e sembra un modo semplice per costringere il genitore ad aspettare. Non ho capito come fare questo però.

Il problema secondario è, il ricavato controllo padre oltre l'evento childDialog.Show (), e tenta di elaborare informazioni del controllo del bambino. Il che non è stato ancora modificato.
Impostazione di una condizione utilizzando valori pubblici del controllo del bambino, come ad esempio childDialog.UserClickedOK, non fare una cosa per aiutare, in quanto i valori di default sono ancora in vigore.

Che cosa sto trascurando?

Grazie a tutti! :)

È stato utile?

Soluzione

Hai bisogno di mostrare la forma modale, utilizzando ShowDialog invece di Show. All'interno del vostro form figlio, si imposta il DialogResult a tutto ciò che rende più senso data l'interazione con l'utente che è accaduto prima.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top