zoukankan      html  css  js  c++  java
  • EventHandlerList事件字典集合类的使用

       EventHandlerList

          

    主要成员
     public void AddHandler(object key, Delegate value);//将一个委托添加到集合中,使用key作为标记
     public void AddHandlers(EventHandlerList listToAddFrom);//将一个委托从集合中remove
     public Delegate this[object key] { get; set; }//通过使用事件的key获取事件

      

            在创建众多个事件的时候,为了节约资源,使用EventHandlerList进行统一管理,

            当需要事件的时候就使用EventhandelrList实例.AddHandler(keys,Delete)将委托添加进去,

            也可以使用EventhandelrList实例.RemoveHandler(keys,Delete)将委托删除,

            想使用事件的时候,可以通过Key来取得创建的委托

      
              System.ComponentModel.EventHandlerList eventHandlerList = new System.ComponentModel.EventHandlerList();
                eventHandlerList.AddHandler("key1",new MyDelete(new Component().SayHello));
                eventHandlerList.AddHandler("key2", new MyDelete(new Component().SayHi));
    //eventHandlerList.RemoveHandler("key2",new MyDelete(new Component().SayHi));

    MyEventHandler +=(MyDelete)eventHandlerList["key1"]; MyEventHandler += (MyDelete)eventHandlerList["key2"]; MyEventHandler();
    
    

         *总结:通过EventHandlerList可以在一个集合中管理多个对象,节省了事件对象占用的空间

  • 相关阅读:
    知识点
    Python基础 (下)
    Python基础 (上)
    RESTful和SOAP的区别
    Maven
    centos7下配置的php命令
    centos7下的nginx命令配置
    CentOS 7.4下使用yum安装MySQL5.7.20 最简单的
    word下载
    phpExcel导出表格
  • 原文地址:https://www.cnblogs.com/whbk/p/6407333.html
Copyright © 2011-2022 走看看