none
MDI Padre - Winforms Hjo - Winforms Nieto RRS feed

  • Pregunta

  • Hola Amigos,

    Mi problema consiste en lo siguiente:

    El padre MDI llama al hijo pero si maximizo la tabla OIUniMedidaTabla y quiero abrir el nieto que es OIUniMedida Crear se abre maximizado.

    Como puedo hacer para que el Nieto no se abra maximizado.

    Tengo un MDI padre el cual llama al hijo ejemplo:

                Dim OIUniMedidaTabla As New OIUniMedidaTabla
                OIUniMedidaTabla.MdiParent = Me
                OIUniMedidaTabla.Show()

    Esto Luego desde un boton llamo a otro Winform para crear un nuevo registro con el siguiente código:

            Dim OIUniMedidaCrearAs New OIUniMedidaCrear
            OIUniMedidaCrear.MdiParent = Me.MdiParent
            OIUniMedidaCrear.Show()

    Muchas gracias.



    Conocuica

    domingo, 23 de diciembre de 2018 18:43

Respuestas

  • El problema está en que tu nieto no es realmente un "nieto", sino que lo has convertido en "hijo" del MDI debido a la línea donde le asignas el MdiParent. Y en un MDI no está permitido que algunos de los hijos estén maximizados y otros no. Cuando en el MDI pides "maximizar" un hijo, se maximizan TODOS sus hijos. Así que si quieres que tu "nieto" no se maximice, tienes que dejarlo desconectado del MDI, es decir, no ponerle esta línea: OIUniMedidaCrear.MdiParent = Me.MdiParent. Desde luego, eso tiene ciertos inconvenientes, por ejemplo, si a continuación minimizas el MDI no se minimizaría esa ventana nieta. Si eso te molesta, podrías resolverlo mediante código en el evento Resize del MDI.

    • Propuesto como respuesta Sergio Parra lunes, 24 de diciembre de 2018 10:48
    • Marcado como respuesta conocuica jueves, 10 de enero de 2019 10:24
    lunes, 24 de diciembre de 2018 9:42