我想將方法的引用傳遞給另一個方法,並將其作爲變量存儲。後來,我想用這個引用來定義一個事件處理程序。如何將方法引用傳遞給C中的另一種方法#
當進行事件處理程序,方法引用傳遞,如:
myButton.Click += new RoutedEventHandler(myButton_Click);
而且如果你從智能感知的構造「RoutedEventHandler」,它看起來像:
RoutedEventHandler(void(object, RoutedEventArgs))
什麼我想要做的是將方法「myButton_Click」傳遞給不同的靜態方法,然後在那裏創建一個事件處理程序。我如何將引用傳遞給靜態方法?我嘗試以下,但它不會編譯:
public class EventBuilder
{
private static void(object, RoutedEventArgs) _buttonClickHandler;
public static void EventBuilder(void(object, RoutedEventArgs) buttonClickHandler)
{
_buttonClickHandler = buttonClickHandler;
}
public static void EnableClickEvent()
{
myButton.Click += new RoutedEventHandler(_buttonClickHandler);
}
}
感謝, 本
如果_buttonClickHandler已經是RoutedEventHandler,我不應該能夠將它設置爲像myButton.Click + = _buttonClickHandler? – 2009-01-05 22:51:01