none
Manda un objeto de una clase de un Formulario hijo a uno Padre RRS feed

  • Debate general

  • Buenas :

     Sé que hay muchos enlaces para pasar de un formulario de hijo a uno padre. Entre ellos el del gran http://ltuttini.blogspot.com.es/2009/09/c-comunicar-formularios-de-forma.html Leandro Tutti ... pero no lo hago funcionar ,con lo que después de mucho mirar os pido consejo .

    Tengo 2 Formularios (frmPresentación padre y frm_configurarusuarios hijo) y una clase Usuarios (C_usuarios)

    En el frm_LoguearUsuarios realizo una manipulación de objetos de la clase usuario. Borro , elimino y esas cosas. Al cerrar este formulario quiero devolverle un objeto de la clase usuarios para manipular.

    Pero al cerrar quiero devolverle un objeto de la clase usuarios . Me da igual que sea ByRef o el objeto entero mediante un "return objeto".

    Os pongo algo del código:

    Del frm_Presentacion llamo al hijo (frm_configurarusuarios) así:

             Dim frm_ConfigUsuarios As New Fr_ConfigUsuarios
            frm_ConfigUsuarios.Show(Me)
            Me.Hide()

    Y del  frm_configurarusuarios hijo vuelvo al formulario así :

            Me.Owner.Show()

    Tengo en el formulario frm_Presentacion Padre  definido las propiedades de una variable :

    Private G_obj_user As C_Usuario

        Public Property Usuario As C_Usuario
            Get
                Return G_obj_user
            End Get
            Set(ByVal value As C_Usuario)
                G_obj_user = value
            End Set
        End Property



    Actualmente lo tengo solucionado con una variable global en un Módulo que me he hecho . Pero no me gusta trabajar con variables globales.

    lunes, 23 de mayo de 2016 2:17

Todas las respuestas

  • Si quieres hacer una chapucilla rápida, en el frm_configuracionusuarios puedes poner esto:

    CType(Me.Owner, frm_Presentacion).Usuario = elObjetoUsuario

    Pero si quieres ser más elegante y que el formulario hijo no necesite conocer al padre, entonces una opción mejor sería que el hijo exponga un evento de cambio del objeto, y que el padre se suscriba a ese evento cuando instancie al hijo.

    lunes, 23 de mayo de 2016 18:02
  • Gracias Alberto Poblacion.

    Me gusta las 2 opciones que me has mostrado. 

    A ver que pienso bien como hacer esta parte y te comento

    "Pero si quieres ser más elegante y que el formulario hijo no necesite conocer al padre, entonces una opción mejor sería que el hijo exponga un evento de cambio del objeto, y que el padre se suscriba a ese evento cuando instancie al hijo."

    lunes, 23 de mayo de 2016 22:28