事件处理程序
public void DeliverEvent(object sender, EventArgs e)
{
}
#1:这行得通
public void StartListening(Button source)
{
source.Click += DeliverEvent;
}
#2:这也是..
public void StartListening(EventHandler eventHandler)
{
eventHandler += DeliverEvent;
}
但是在 #2 中,您不能调用该方法,因为如果您尝试这样的操作:
StartListening(button.Click);
你得到这个错误:
The event 'System.Windows.Forms.Control.Click' can only appear on the left hand side of += or -=
有没有办法解决这个错误?我希望能够将事件而不是包含事件的对象传递给StartListening
方法。