Saludos a todos. He creado un Component que agrego a un form (aunque no
necesariamente debe ser asi). Este component tiene una propiedad ContextMenu
a la que le es asignado un ContextMenu que he creado en el Form y tiene
contenido. Mi problema es que cuando muestro el ContextMenu desde mi
Component, no se ejecuta el codigo asociado a cada elemento del menu. En el
Component he creado una clase llamada "window" que hereda de NativeWindow
para que mi Component no requiera de un form para ser ejecutado. El codigo
es el siguiente para mostrar el menu desde el Component es el siguiente
if (this.contextMenu != null)
{
SetForegroundWindow(new HandleRef(this.window,
this.window.Handle)); //Llamada a la API
TrackPopupMenuEx(
new HandleRef(this.contextMenu, this.contextMenu.Handle),
0x40,
point1.x, point1.y,
new HandleRef(this.window, this.window.Handle),
null); //Llamada a la API
PostMessage(
new HandleRef(this.window, this.window.Handle),
0,
IntPtr.Zero,
IntPtr.Zero); //Llamada a la API
}
Este codigo de hecho muestra el menu en la posicion correcta, pero al hacer
click en cualquiera de los elementos del menu, no se ejecuta el codigo
asociado al elemento del menu que ha sido seleccionado. Alguna idea de por
que pasa esto?
Si necesitan mas detalles, con gusto se los doy.
Gracias de antemano.
Leer las respuestas