Cómo: Recuperar la información de un cuadro de diálogo selectivamente mediante múltiples propiedades

Una forma común de procesar la información devuelta por un cuadro de diálogo es proporcionar un conjunto de propiedades que devuelvan elementos individuales de los datos del cuadro de diálogo. De este modo, es posible extraer datos del cuadro de diálogo de forma selectiva.

Si tiene datos relacionados en el cuadro de diálogo, considere la posibilidad de exponer parte de la información por medio de objetos. Para obtener información detallada, vea Tutorial: Recuperar la información de un cuadro de diálogo colectivamente mediante objetos.

Para exponer información de un cuadro de diálogo mediante propiedades

  1. En la clase que contiene el código del cuadro de diálogo, cree tantas propiedades como necesite para exponer la información necesaria para el cuadro de diálogo. Proporcione un valor devuelto adecuado para el tipo de datos que se ofrecen.

  2. Agregue código a la parte Get de la definición de propiedad. Si desea evitar que un usuario cambie la información del cuadro de diálogo fuera del propio cuadro de diálogo, quite la parte Set de la definición de propiedad.

    El siguiente fragmento de código muestra cómo exponer el valor de un cuadro combinado (cmbState) por medio de una propiedad definida en un cuadro de diálogo:

    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 vez expuestas las propiedades para todos los datos que desea proporcionar, podrá recuperar los datos desde la aplicación que utiliza el cuadro de diálogo.

  • En el formulario que muestra el cuadro de diálogo, abra el controlador de eventos o el método que se utilizó para mostrar el cuadro de diálogo y determinar su DialogResult. Agregue código para obtener las propiedades del formulario del cuadro de diálogo, como se muestra en el ejemplo siguiente:

    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());
       }
    }
    

Vea también

Tareas

Cómo: Crear cuadros de diálogo en tiempo de diseño

Cómo: Cerrar cuadros de diálogo y conservar los datos introducidos por el usuario

Cómo: Recuperar el resultado de los cuadros de diálogo

Conceptos

Introducción de datos por el usuario en los cuadros de diálogo

Otros recursos

Cuadros de diálogo en formularios Windows Forms