Problema formulario hijo
Publicado por Queco (1 intervención) el 14/08/2007 10:09:11
Hola a todos!
Escribo para ver si alguien me puede ayudar, llevo ya un tiempo dandole vueltas y no encuentro la solucion, aunque probablemente sea bastante basica... Os explico:
Tengo una aplicacion con varios forms:
- Form 1 es un form MdiParent con varios forms hijos, entre ellos Form2.
Form2 formHijo = new Form2();
formHijo.MdiParent = this;
formHijo.Show();
- Form2 crea un form hijo llamado Form3 destinado a visulizar informacion. El atributo sera accedido por Form3. Atributo como metodo
public Int32 NumGranja
{
get
{
return numGranja;
}
set
{
numGranja = value;
}
}
- Para crear Form3 hago:
Form3 f = Form3();
f.Show(this);
Para acceder al atributo en Form3 hago lo siguiente
... = ((Form2)this.Owner).numGranja;
Esto me da un error en tiempo de ejecucion relacionado con un cast de clases:
- Unable to cast object of type 'Aplicacion.Form1' to type 'Aplicacion.2'. -
En cambio si hago que Form2 no tenga a Form1 como MdiParent, eliminando la sentencia formHijo.MdiParent = this; si que funciona.
Muchas gracias por vuestra ayuda y un saludo!
Escribo para ver si alguien me puede ayudar, llevo ya un tiempo dandole vueltas y no encuentro la solucion, aunque probablemente sea bastante basica... Os explico:
Tengo una aplicacion con varios forms:
- Form 1 es un form MdiParent con varios forms hijos, entre ellos Form2.
Form2 formHijo = new Form2();
formHijo.MdiParent = this;
formHijo.Show();
- Form2 crea un form hijo llamado Form3 destinado a visulizar informacion. El atributo sera accedido por Form3. Atributo como metodo
public Int32 NumGranja
{
get
{
return numGranja;
}
set
{
numGranja = value;
}
}
- Para crear Form3 hago:
Form3 f = Form3();
f.Show(this);
Para acceder al atributo en Form3 hago lo siguiente
... = ((Form2)this.Owner).numGranja;
Esto me da un error en tiempo de ejecucion relacionado con un cast de clases:
- Unable to cast object of type 'Aplicacion.Form1' to type 'Aplicacion.2'. -
En cambio si hago que Form2 no tenga a Form1 como MdiParent, eliminando la sentencia formHijo.MdiParent = this; si que funciona.
Muchas gracias por vuestra ayuda y un saludo!
Valora esta pregunta


0