Cómo: Recuperar datos de un cuadro de diálogo

Actualización: noviembre 2007

Los cuadros de diálogo permiten a un programa interactuar con los usuarios y recuperar datos que los usuarios han escrito en el cuadro de diálogo para el uso de la aplicación. Hay varios cuadros de diálogo integrados que puede utilizar en sus aplicaciones. Para obtener más información, vea Usar cuadros de diálogo integrados en una aplicación. También puede crear sus propios cuadros de diálogo.

Una tarea común en el desarrollo con Windows Forms consiste en mostrar un cuadro de diálogo para recopilar información cuando un usuario hace clic en un botón del formulario principal de una aplicación. Puede ver un ejemplo de esto en el IDE de Visual C# Express. Al agregar un control ListBox a un formulario, puede hacer clic en la propiedad Elementos en la ventana Propiedades para mostrar un cuadro de diálogo. Este cuadro de diálogo permite escribir rápidamente texto en líneas independientes de un cuadro de texto. La aplicación agrega a continuación cada línea de texto al control ListBox al hacer clic en Aceptar. Si desea permitir a los usuarios agregar sus propios elementos a un cuadro de lista en su aplicación, puede crear su propio cuadro de diálogo de editor de cadenas.

Para crear el formulario principal de su aplicación

  1. En el menú Archivo, haga clic en Nuevo proyecto.

    Aparecerá el cuadro de diálogo Nuevo proyecto.

  2. Haga clic en Aplicación de Windows Forms y, a continuación, en Aceptar.

    Un formulario denominado Form1 se agrega al proyecto.

  3. Desde el Cuadro de herramientas, arrastre un control ListBox hasta el formulario y cambie la siguiente propiedad en la ventana Propiedades:

    Propiedad

    Valor

    Modificadores

    Public

  4. Agregue un control Button al formulario y cambie las propiedades siguientes en la ventana Propiedades:

    Propiedad

    Valor

    Name

    agregarElementos

    Text

    Agregar

  1. En el menú Proyecto, haga clic en Agregar Windows Forms, deje el nombre predeterminado Form2 y haga clic en Agregar.

  2. En el Cuadro de herramientas, arrastre un control Label hasta el formulario y cambie la propiedad Texto a Entrar la cadena (una por línea).

  3. Agregue un control TextBox al formulario y cambie las propiedades siguientes en la ventana Propiedades:

    Propiedad

    Valor

    Multiline

    True

    Scrollbars

    Ambos

    Size

    255, 160

  4. Agregue un control Button al formulario y cambie las propiedades siguientes en la ventana Propiedades:

    Propiedad

    Valor

    Name

    okButton

    Text

    Aceptar

Existen varias maneras de pasar datos de un formulario Windows Forms a otro. En este ejemplo, pasará Form1 al constructor de Form2.

  1. Haga doble clic en el botón Aceptar para crear el controlador de eventos Click predeterminado.

    Antes de agregar código a este procedimiento, debería crear una variable para el formulario principal y un nuevo constructor para la clase Form2.

  2. Agregue el código siguiente debajo del constructor predeterminado. Este código crea un constructor sobrecargado que requiere Form1 como parámetro.

    Form1 mainForm;
    
    public Form2(Form1 mainForm)
    {
        this.mainForm = mainForm;
        InitializeComponent();
    
    }
    
  3. En el controlador del evento Click de okButton, añada el siguiente código: Este código borra todo el texto existente en el cuadro de lista, asigna cada línea de texto del cuadro de texto de Form2 a una matriz y, a continuación, agrega cada elemento de la matriz al cuadro de lista de Form1.

    if (this.textBox1.Text != string.Empty)
    {
    
        mainForm.listBox1.Items.Clear();
    
        string[] stringsEntered = textBox1.Lines;
    
        for (int count = 0; count < stringsEntered.Length; count++)
        {
    
            mainForm.listBox1.Items.Add(stringsEntered[count]);
    
        }
    
    }
    this.Close();
    
  4. En el Explorador de soluciones, haga clic con el botón secundario sobre Form1 y, a continuación, seleccione Ver diseñador.

  5. Haga doble clic en el botón Agregar para agregar el controlador de eventos Click predeterminado y agregue el código siguiente para crear una instancia de Form2 y mostrar el formulario:

    Form2 subForm = new Form2(this);
    subForm.Show();
    
  6. Presione F5 para ejecutar el código.

  7. Cuando el formulario se abra, haga clic en Agregar.

  8. Cuando el cuadro de diálogo se abra, escriba la lista siguiente de colores y presione ENTRAR después de cada palabra.

    Azul

    Verde

    Amarillo

    Rojo

  9. Haga clic en Aceptar.

  10. Compruebe que los datos escritos en el cuadro de diálogo aparecen en el cuadro de lista de Form1.

  11. Cierre la aplicación.

Vea también

Conceptos

Usar cuadros de diálogo integrados en una aplicación

Diseñar una interfaz de usuario en Visual C#

Otros recursos

Cuadros de diálogo (Visual C#)

Paseo guiado por Visual C#