EventHandler和KeyEventHandler之间的共同祖先/接口?

时间:2015-02-23 20:43:10

标签: c# inheritance eventhandler

EventHandler和KeyEventHandler是否共享共同的祖先或接口?我看过文档,也许我只是错过了它,但它们看起来完全不相干。

假设它们之间没有这样的共同链接,那么存储许多EventHandlers KeyEventHandlers的集合的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

KeyEventHandler和EventHandler都是委托。此代码有效:

public void DelegateTest()
{
    var delList = new List<Delegate>();
    delList.Add(new KeyEventHandler(SomeFunction));
    delList.Add(new EventHandler(SomeFunction));
    foreach (var element in delList)
        element.DynamicInvoke(null, null);
}

public void SomeFunction(object sender, EventArgs e)
{
    System.Diagnostics.Debug.WriteLine("Got called!");
}

致电DelegateTest()会写上“有人来电!”两次输出。