Como deshabilitar/habilitar un menuitem de un namespace.mdiform desde otro namespace.form?

03/10/2009 - 03:12 por Fifthtoe | Informe spam
Saludos a Todos,

Quiero comunicar dos formularios que están en distintos Namespaces.

Tengo los siguiente:
1) Namespace: miNamespaceUno y dentro de este tengo un formulario MDI
Container llamado miFormPrincipal, el cual contiene un menu:
&Abrir-->&Prueba
2) Namespace: miNamespaceDos y dentro de este tengo un formulario MDI Child
llamado miFormChild.

Lo que hago es que al presionar el menuitem "Prueba" me muestre el
formulario miNamespaceDos.miFormChild, luego pongo la propiedad del menuitem
en enabled=false; (para que deshabilite la opción y no pueda crear nuevo
forms).

Lo que hice es:
Cree en miNamespaceUno-->References una referencia al miNamespaceDos, y puse
el using correspondiente.

Lo que quiero es que al cerrar el miNamespaceDos.miFormChild, habilite el
menuitem "Prueba" que está en el miNamespaceUno.miFormPrincipal (para poder
crear un nuevo form).

¿Cómo puedo hacerlo?

Muchas gracias pos su atención.

Saludos.

Fifthtoe.
 

Leer las respuestas

#1 Carles
03/10/2009 - 13:57 | Informe spam
Hola,
Yo crearia un evento en el formulario de miNamespace2:
public event EventHandler onCerrarFormulario;

Luego, en miNamespace1, donde abres el formulario child:

using miNamesPace2;
void abrir()
{
mnuAbrir.Enabled = false;
miFormChild f = new miFormChild();
f.MdiParent = this;
f.onCerrarFormulario += delegate {mnuAbrir.Enabled = true;};
f.show();
}

y, en el FormClosed del formulario hijo:
void form_Closed(sender e, eventHandler e)
{
if (onCerrarFormulario != null) onCerrarFormulario(this, null);
}

Está escrito de memoria, pero los tiros van por ahí.
Saludos.

"Fifthtoe" <fifthtoeATgmail.com> escribió en el mensaje
news:
Saludos a Todos,

Quiero comunicar dos formularios que están en distintos Namespaces.

Tengo los siguiente:
1) Namespace: miNamespaceUno y dentro de este tengo un formulario MDI
Container llamado miFormPrincipal, el cual contiene un menu:
&Abrir-->&Prueba
2) Namespace: miNamespaceDos y dentro de este tengo un formulario MDI
Child llamado miFormChild.

Lo que hago es que al presionar el menuitem "Prueba" me muestre el
formulario miNamespaceDos.miFormChild, luego pongo la propiedad del
menuitem en enabled=false; (para que deshabilite la opción y no pueda
crear nuevo forms).

Lo que hice es:
Cree en miNamespaceUno-->References una referencia al miNamespaceDos, y
puse el using correspondiente.

Lo que quiero es que al cerrar el miNamespaceDos.miFormChild, habilite el
menuitem "Prueba" que está en el miNamespaceUno.miFormPrincipal (para
poder crear un nuevo form).

¿Cómo puedo hacerlo?

Muchas gracias pos su atención.

Saludos.

Fifthtoe.




Preguntas similares