¿Cómo pasar un evento a un método?
Me gustaría crear un método que tome un evento como argumento y le agregue eventHandler para manejarlo correctamente. Me gusta esto:
Tengo dos eventos:
public event EventHandler Click;
public event EventHandler Click2;
Ahora me gustaría pasar un evento particular a mi método como este (pseudocódigo):
public AttachToHandleEvent(EventHandler MyEvent)
{
MyEvent += Item_Click;
}
private void Item_Click(object sender, EventArgs e)
{
MessageBox.Show("lalala");
}
ToolStripMenuItem tool = new ToolStripMenuItem();
AttachToHandleEvent(tool.Click);
¿Es posible?
Me di cuenta de que este código funcionaba bien, y volví a mi proyecto y noté que cuando paso un evento declarado en mi clase, funciona, pero cuando paso el evento de otra clase todavía no funciona.
Lo que obtengo es este error:
El evento 'System.Windows.Forms.ToolStripItem.Click' solo puede aparecer en el lado izquierdo de + = o - =