做了个硬盘文件监视工具,  控件的事件 是程序运行时通过+=添加的 由于FileSystemWatcher控件在实例化的时候不能给其Name赋值,所以 有的时候 事件添加了几次不能掌握  如果添加了两次 那么触发的事件也是双份的
怎么通过代码来 停用事件侦听  或者删除已经添加的事件

解决方案 »

  1.   

    这个问题我也遇上过,不过各自指定name就好了,你看看你的事件能不能写在这个控件new之后,也就是只指定一次。或者程序在不退出的情况下,再下次产生该事件前,先销毁上一个定义的控件
      

  2.   

    我实力话那个控件后   还真没找到Name属性  所以无法按名称销毁控件  是FileSystemWather控件
      

  3.   

    button2.Click -= new EventHandler(button2_Click); 
    button2.Click += new EventHandler(button2_Click); 
    Delegate[] delDirectory = button2.Click.GetInvocationList();
    判断事件是否已注册
      

  4.   

    建议新写个类,继承FileSystemWatcher。然后在类里面控制事件只添加一次