首先,了解一下与事件和委托有关的几个类和属性:
Delegate, MulticastDelegate, EventHandler, EventHandlerList, EventHandlerList.ListEntry, Control, Component

Control的Events属性是由System.ComponentModel.Component 继承而来,它是EventHandlerList的实例.

EventHandlerList类有三个重要的方法:

控件中的Events个人理解。      public void AddHandler(object key, Delegate value);
控件中的Events个人理解。      
public void RemoveHandler(object key, Delegate value);
控件中的Events个人理解。      
private ListEntry Find(object key);

示例:我们要为当前控件添加一个点击事件(Click).
第一步:创建一个静态只读的属性
public static readonly object ClickEvent=new object();  //它是以后事件查找委托的键(key),
第二步:注册事件
public event EventHandler Click
{
   add
   {
       base.Events.AddHandler(ClickEvent,value);
   }
   remove
  { 
    base.Events.RemoveHandler(ClickEvent,value);
   }
}
----
以下是Events的定义:
控件中的Events个人理解。private EventHandlerList events;
控件中的Events个人理解。
protected EventHandlerList Events

相关文章:

  • 2021-05-15
  • 2021-05-11
  • 2022-12-23
  • 2021-05-20
  • 2022-12-23
  • 2021-07-19
  • 2021-10-11
  • 2021-08-24
猜你喜欢
  • 2022-12-23
  • 2021-08-08
  • 2022-01-15
  • 2021-05-05
  • 2021-11-17
  • 2021-10-25
  • 2021-05-28
相关资源
相似解决方案