Procedura: recuperare informazioni sulle finestre di dialogo in modo selettivo utilizzando più proprietà
Le informazioni restituite da una finestra di dialogo vengono in genere elaborate tramite un insieme di proprietà, che restituiscono singoli elementi di dati della finestra. In questo modo è possibile estrarre i dati dalla finestra di dialogo in modo selettivo.
In caso di dati di finestre di dialogo correlati fra loro, è consigliabile esporre alcune informazioni tramite oggetti. Per informazioni dettagliate, vedere Procedura dettagliata: recupero collettivo di informazioni relative alle finestre di dialogo tramite oggetti.
Per esporre le informazioni delle finestre di dialogo tramite proprietà
Nella classe che contiene il codice relativo alla finestra di dialogo creare il numero di proprietà necessario a esporre le informazioni indispensabili per la finestra di dialogo. Fornire un valore restituito adatto al tipo di dati forniti.
Aggiungere il codice alla parte Get della definizione della proprietà. Per impedire all'utente di modificare le informazioni della finestra di dialogo all'esterno di questa, rimuovere la parte Set della definizione della proprietà.
Il codice che segue illustra come esporre il valore di una casella combinata (cmbState) tramite una proprietà definita in una finestra di dialogo:
Public Property StateSelected() As String Get Return cmbState.Text End Get Set(ByVal Value As String) End Set End Property
public string StateSelected { get { return cmbState.Text; } }
public String StateSelected() { return comboBox1.get_SelectedText(); }
Una volta esposte le proprietà relative a tutti i dati da fornire, è possibile recuperare i dati dall'applicazione che utilizza la finestra di dialogo.
Per recuperare dati dalle proprietà di una finestra di dialogo
Nel form che visualizza la finestra di dialogo aprire il gestore eventi o il metodo utilizzato per visualizzare la finestra di dialogo e determinare la proprietà DialogResult. Aggiungere il codice per raccogliere le proprietà del form della finestra di dialogo, come illustrato nell'esempio seguente:
Public Sub ShowMyDialog() ' Create and display an instance of the dialog box. Dim Dlg as New Form1() Dlg.ShowDialog() ' Determine the state of the DialogResult property for the form. If Dlg.DialogResult = DialogResult.OK Then ' Display the state that was selected in the dialog box's ' combo box in a MessageBox. MessageBox.show Dlg.StateSelected End If End Sub
private void ShowMyDialog() { // Create and display an instance of the dialog box. Form1 dlg = new Form1(); dlg.ShowDialog(); // Determine the state of the DialogResult property for the form. if (dlg.DialogResult == DialogResult.OK) { // Display the state that was selected in the dialog box's combo // box in a MessageBox. MessageBox.Show (dlg.StateSelected); } }
private void ShowMyDialog() { // Create and display an instance of the dialog box. Form1 dlg = new Form1(); dlg.ShowDialog(); // Determine the state of the DialogResult property for the form. if (dlg.get_DialogResult() == DialogResult.OK) { // Display the state that was selected in the dialog box's combo // box in a MessageBox. MessageBox.Show(dlg.StateSelected()); } }
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
Concetti
Input dell'utente all'interno di finestre di dialogo