none
Pasar datos de un form a otro sin usar form.show() para actualizar el control RRS feed

  • Pregunta

  • Buenas tardes.

    Tengo una pregunta, se puede actualizar un control (label.text,texbox.text) desde otro form sin tener que usar el form.show()?

    He leído y visto varios ejemplos pero en todos se usa el form.show() para que se note el cambio, necesito que desde el form1 se pase el dato al form2 y en este se actualice un label.text sin tener que recargar todo el form2, logro pasar el dato pero no puedo hacer que se actualice el texto del label.

    Gracias de antemano.

    Así obtengo del Form1 el dato: 

        private void BtnAcept_Click(object sender, EventArgs e)
            {
                Dato = CBDatos.SelectedItem.ToString() + " " + LDato2.Text;

    Form2._label = _DatoForm1;//Paso el dato del Form1 al Form2

            }

    public string _DatoForm1 { get { return Dato; } }

    public string _label //Recibe el dato desde el Form1
            {
                set {LDatoRecibido.Text = value;}
            }


    jueves, 17 de mayo de 2018 22:58

Todas las respuestas

  • La actualización en pantalla de un control está supeditada a la disponibilidad del hilo que ejecuta la bomba o bucle de mensajes de Windows.  Si el hilo está ocupado, no procesará el mensaje WM_PAINT del control que lo necesita y por lo tanto no actualizará su estado en pantalla.

    Lo que usted muestra, ¿es código simplificado?  Bajo situaciones normales, asignar la propiedad Text del control es suficiente para que actualice.  Si no sucede es porque normalmente el hilo de la interfaz gráfica está ocupado haciendo algo más.


    Jose R. MCP
    My GIT Repositories | Mis Repositorios GIT

    jueves, 17 de mayo de 2018 23:10
    Moderador
  • Gracias por responder, creo que ya solucioné en parte mi problema, lo hice utilizando delegados. 

    El asunto es que necesito pasar el mismo dato a otro form, supongamos la jerarquía de los forms, son 3 entonces, serian en orden "Abuelo" ( Por llamarlo de alguna manera), "padre" e "Hijo", los delegados me permiten pasar de Hijo a Padre, pero no se como pasarlo de de Hijo a Abuelo.  
    • Editado Damorac viernes, 18 de mayo de 2018 19:07
    viernes, 18 de mayo de 2018 15:27