none
请问如何动态解除事件委托 RRS feed

  • 问题

  • 我想做一个类似这样的函数,请大侠们看看是否可行

    public void SetEventPopedom(Control ctl, 事件, 事件的委托)

    {

         ctl.事件 -= 事件的委托;

    }

    2010年6月9日 3:30

答案

全部回复

  • 我想做一个类似这样的函数,请大侠们看看是否可行

    public void SetEventPopedom(Control ctl, 事件, 事件的委托)

    {

         ctl.事件 -= 事件的委托;

    }

    不行

     

    2010年6月9日 5:51
  • 你可以去试试反射来做

    参考这里:

    http://www.maillove.cn/NEWS.asp?id=1641&infotype=2

     

    • 已标记为答案 Jeuo 2010年6月10日 1:18
    2010年6月9日 5:56
  • 你好!

         基本思路是可行的,但是你的方法只能取消订阅Control这个类中有的事件!

         想做的通用一些必须要反射,然后传入一个事件名!反射的性能开销很大,实际上这样的功能封装成函数意义不大,你要取消订阅的时候要传入好几个参数,代码肯定不止一行,你直接取消订阅一行代码就够了,性能也好很多!


    周雪峰
    2010年6月9日 10:53
    版主