C# y MDI

13/12/2007 - 13:43 por Jorge Montenegro | Informe spam
Buen día.

Bueno, tengo el siguiente problema...

Estoy creando una aplicación de Formularios MDI con Visual C# Express
Edition 2008. Ya tengo creado el formulario padre y el formulario hijo. El
problema viene cuando quiero acceder a un control del formulario padre desde
el formulario hijo pues he intentado muchas cosas y aún no logro hacerlo.

¿me podrías ayudar con este problemita? :P

Atentamente, Jorge Montenegro Gana.

Preguntas similare

Leer las respuestas

#1 Jose Plus42
13/12/2007 - 15:53 | Informe spam
Cuando llamas al formulario hijo desde el padre supongo que haces algo
del tipo:

FormHijo fh = new FormHijo();
fh.MdiParent = this;
fh.Show();

Por tanto en el formulario hijo tienes la referencia al padre en
MdiParent, pudiendo hacer, por ejemplo:

this.MdiParent.Text = "Modificando el Text del padre desde el Hijo";

Un saludo

Jorge Montenegro escribió:
Buen día.

Bueno, tengo el siguiente problema...

Estoy creando una aplicación de Formularios MDI con Visual C# Express
Edition 2008. Ya tengo creado el formulario padre y el formulario hijo. El
problema viene cuando quiero acceder a un control del formulario padre desde
el formulario hijo pues he intentado muchas cosas y aún no logro hacerlo.

¿me podrías ayudar con este problemita? :P

Atentamente, Jorge Montenegro Gana.
Respuesta Responder a este mensaje
#2 Jose Plus42
13/12/2007 - 16:02 | Informe spam
Estoy recordando que también tienes que hacer visibles los controles del
padre desde el hijo. Por defecto te los crea como "Private". Tienes que
hacerlos públicos (propiedad Modifiers del control en el formulario
padre a "Public").

Un saludo

Jose Plus42 escribió:
Cuando llamas al formulario hijo desde el padre supongo que haces algo
del tipo:

FormHijo fh = new FormHijo();
fh.MdiParent = this;
fh.Show();

Por tanto en el formulario hijo tienes la referencia al padre en
MdiParent, pudiendo hacer, por ejemplo:

this.MdiParent.Text = "Modificando el Text del padre desde el Hijo";

Un saludo

Jorge Montenegro escribió:
Buen día.

Bueno, tengo el siguiente problema...

Estoy creando una aplicación de Formularios MDI con Visual C# Express
Edition 2008. Ya tengo creado el formulario padre y el formulario
hijo. El problema viene cuando quiero acceder a un control del
formulario padre desde el formulario hijo pues he intentado muchas
cosas y aún no logro hacerlo.

¿me podrías ayudar con este problemita? :P

Atentamente, Jorge Montenegro Gana.
Respuesta Responder a este mensaje
#3 Jorge Montenegro
13/12/2007 - 16:12 | Informe spam
Bueno, me sirvio bastante tu post pero aún no logro hacer lo que quiero...

Voy a poner un ejemplo:

En el formulario padre tengo un boton (button1) y lo que quiero es modificar
la propiedad Enabled del boton pero desde el formulario hijo.

Lo he intentado de diferentes maneras pero aún no lo consigo :(

¡Ayuda por favor! T_T

"Jose Plus42" wrote:

Cuando llamas al formulario hijo desde el padre supongo que haces algo
del tipo:

FormHijo fh = new FormHijo();
fh.MdiParent = this;
fh.Show();

Por tanto en el formulario hijo tienes la referencia al padre en
MdiParent, pudiendo hacer, por ejemplo:

this.MdiParent.Text = "Modificando el Text del padre desde el Hijo";

Un saludo

Jorge Montenegro escribió:
> Buen día.
>
> Bueno, tengo el siguiente problema...
>
> Estoy creando una aplicación de Formularios MDI con Visual C# Express
> Edition 2008. Ya tengo creado el formulario padre y el formulario hijo. El
> problema viene cuando quiero acceder a un control del formulario padre desde
> el formulario hijo pues he intentado muchas cosas y aún no logro hacerlo.
>
> ¿me podrías ayudar con este problemita? :P
>
> Atentamente, Jorge Montenegro Gana.

Respuesta Responder a este mensaje
#4 Alberto Poblacion
13/12/2007 - 16:21 | Informe spam
"Jorge Montenegro" wrote in
message news:
Bueno, me sirvio bastante tu post pero aún no logro hacer lo que quiero...

Voy a poner un ejemplo:

En el formulario padre tengo un boton (button1) y lo que quiero es
modificar
la propiedad Enabled del boton pero desde el formulario hijo.

Lo he intentado de diferentes maneras pero aún no lo consigo :(



En el padre MDI: Busca la declaración del Button1, y donde dice "private"
cámbialo por "public" o "internal" (si no lo quieres hacer en el código
fuente, también lo puedes hacer desde el diseñador cambiando la propiedad
"Modifiers").
En el hijo MDI:
((tipoDelPadre)MdiParent).Button1.Enabled = false;
Respuesta Responder a este mensaje
#5 Jorge Montenegro
13/12/2007 - 16:56 | Informe spam
Bueno, ya logre hacerlo y les agradesco todo...

PERO, ahora estoy intentando accesar desde el Formulario Hijo a un elemento
del menuStrip del Padre y ahora si que no me permite hacer nada :(

Por ejemplo:

El Item del menuStrip que intento referenciar se llama miSubMenu
(ToolMenuStrip).
Control controls = MdiParent.Controls["miSubMenu"];

Y me devuelve "null" :S.

Ya modifique lo de "private" y lo puse en "public", tanto el formulario, el
menuStrip, como miSubMenu y aún así me devuelve null :S.

¿Me podrías ayudar? :D

Atentamente, Jorge Montenegro Gana.

"Jorge Montenegro" wrote:

Buen día.

Bueno, tengo el siguiente problema...

Estoy creando una aplicación de Formularios MDI con Visual C# Express
Edition 2008. Ya tengo creado el formulario padre y el formulario hijo. El
problema viene cuando quiero acceder a un control del formulario padre desde
el formulario hijo pues he intentado muchas cosas y aún no logro hacerlo.

¿me podrías ayudar con este problemita? :P

Atentamente, Jorge Montenegro Gana.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida