Forums Últimos mensajes - Powered by IBM
 

Cerrar Formularios Hijos

18/05/2010 - 23:05 por RP | Informe spam
Hola que tal, bueno, tengo un Formulario padre MDI, que me habre a un
formulario hijo, a su vez este me abre otro formulario (vendria a ser un form
nieto), lo que deseo es al abrir el formulario Nieto, deseo que cierre el
formulario hijo, y que luego que se cierre el formulario nieto, se habra
nuevamente el formulario hijo, ojo, no que se oculte, sino que se cierre.

Como hago eso??, espero que me puedan ayudar, gracias de antemano
 

Leer las respuestas

#1 SoftJaén
20/05/2010 - 15:35 | Informe spam
"RP" preguntó:

lo que deseo es al abrir el formulario Nieto, deseo que cierre el
formulario hijo, y que luego que se cierre el formulario nieto, se habra
nuevamente el formulario hijo, ojo, no que se oculte, sino que se cierre.

Como hago eso?



Hola:

Me imagino que tus motivos tendrás para no ocultar el formulario Hijo cuando
muestras el formulario Nieto, por tanto, no te va a quedar más remedio que
llamar de nuevo al formulario Hijo desde el evento FormClosing del
formulario Nieto, donde tendrás que referenciar el formulario MDI padre, que
en el ejemplo se llama Form1.

En el formulario Nieto, tendrás que ejecutar lo siguiente:

private void formNieto_Load(object sender, EventArgs e)
{
// instalamos el evento FormClosing
this.FormClosing + new FormClosingEventHandler(this.FormOnClosing);
}

private void FormOnClosing(object sender, FormClosingEventArgs e)
{
// Se ha cerrado el formulario Nieto;
// abrimos de nuevo el formulario Hijo.

Form frmParent = null;

foreach (Form f in Application.OpenForms)
{
// Obtenemos la referencia del formulario MDI,
// llamado en el ejemplo Form1.
//
if (f.Name == "Form1") { frmParent = f; break; }
}

formHijo frm = new formHijo();
frm.MdiParent = frmParent;
frm.Show();

}

Un saludo

Enrique Martínez
[MS MVP - VB]

Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.

Preguntas similares