Input dell'utente all'interno di finestre di dialogo
In genere, le finestre di dialogo vengono utilizzate per richiedere all'utente dati necessari all'applicazione. Tali informazioni vengono elaborate dal form che visualizza la finestra di dialogo. Quando si visualizza una finestra di dialogo è importante sapere in che modo viene chiusa ovvero il suo "risultato". Se ad esempio l'utente sceglie Annulla, i dati inseriti non vengono memorizzati ma eliminati. Per verificare come viene chiusa una finestra di dialogo, utilizzare la proprietà Form.DialogResult.
Dal form che visualizza la finestra di dialogo, chiamato anche form padre della finestra di dialogo, è possibile utilizzare il valore della proprietà DialogResult per stabilire se è stato scelto OK o Annulla. In base alla proprietà DialogResult restituita si può decidere se è necessario recuperare o meno le informazioni della finestra di dialogo. Quando non si utilizzano i controlli Button nella finestra di dialogo ma si desidera restituire comunque una proprietà DialogResult, è possibile impostare il valore della proprietà DialogResult di una finestra di dialogo.
Se un form viene visualizzato come finestra di dialogo modale, quando l'utente fa clic sul pulsante Chiudi, ossia il pulsante con la X nell'angolo superiore destro del form, questo viene nascosto e la proprietà DialogResult viene impostata su DialogResult.Cancel. Il metodo Close non viene chiamato automaticamente quando l'utente fa clic sul pulsante Chiudi di una finestra di dialogo o imposta il valore della proprietà DialogResult, ma viene nascosto il form, che potrà essere nuovamente visualizzato senza dover creare una nuova istanza della finestra di dialogo. Per questo motivo è necessario chiamare il metodo Dispose del form quando il form non è più richiesto dall'applicazione.
Nota
È possibile eseguire l'override del valore assegnato alla proprietà DialogResult quando l'utente fa clic sul pulsante Chiudi impostando la proprietà DialogResult in un gestore eventi per l'evento Closing del form.
Vedere anche
Attività
Procedura: creare finestre di dialogo in fase di progettazione
Procedura: chiudere finestre di dialogo e mantenere l'input dell'utente
Procedura: recuperare il risultato delle finestre di dialogo