Acceder desde un MdiChildre a un form superior

10/10/2007 - 13:14 por putzol putzol2 | Informe spam
¡Hola!

Soy usuario de c# .net 2005.

En mi aplicación tengo un FormPrincipal y dentro de el, lanzo diferentes
MdiChildren. Como podría acceder desde un MdiChildren a un metodo que
este en el FormPrincipal?
Tengo que usar delegados? O static?
El problema del static es que puedo acceder pero no puedo acceder a los
controles internos.


*** Sent via Developersdex http://www.developersdex.com ***
 

Leer las respuestas

#1 Luis Miguel Blanco
10/10/2007 - 14:35 | Informe spam
Hola

Puedes resolverlo escribiendo en el código de tu formulario hijo, accediendo
a su propiedad MdiParent, y haciendo un type-casting de este último, para
poder ejecutar el método existente en el formulario padre. Te acompaño un
bloque de código con un ejemplo.

//--
public partial class Form1 : Form
{
private void button1_Click(object sender, EventArgs e)
{
Hijo1 frmHijo1 = new Hijo1();
frmHijo1.Show();
frmHijo1.MdiParent = this;
}
public void MetodoFormPadre()
{
MessageBox.Show("método form padre");
}
}


public partial class Hijo1 : Form
{
private void btnLlamarFormPadre_Click(object sender, EventArgs e)
{
((Form1)this.MdiParent).MetodoFormPadre();
}
}
//--

Espero que te sea de utilidad.

Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"putzol putzol2" wrote:



!Hola!

Soy usuario de c# .net 2005.

En mi aplicacisn tengo un FormPrincipal y dentro de el, lanzo diferentes
MdiChildren. Como podrma acceder desde un MdiChildren a un metodo que
este en el FormPrincipal?
Tengo que usar delegados? O static?
El problema del static es que puedo acceder pero no puedo acceder a los
controles internos.


*** Sent via Developersdex http://www.developersdex.com ***

Preguntas similares