日期:2014-05-18  浏览次数:21158 次

如果判断控件的事件是否存在
举个例子,动态加载一个按钮


现在我根据条件加载按钮的MouseEnter和MouseLeave事件,可能要这两个事件可能不要。
现在我想知道这两个事件是否已经加载过,如果加载了,就不能再次加载了,因为这样就加载了2次了,如果下一次不要这2个事件,只减一次是没有效果的,事件还是存在。

不知道大家明白了没有,就是判断控件的某个事件是否存在。

------解决方案--------------------
可以通过定义一个bool变量,初始值设为false
加载后,值变成true就行了
------解决方案--------------------
先 -=
再 += 
别无他法
------解决方案--------------------
每次都先-=后+=就可以了,放心-=不会出现“负事件”的
------解决方案--------------------
探讨
判断是否为空

------解决方案--------------------
做一个hashtable key是控件id值是bool +=的时候设置为true -=的时候设置为false 唯一不妥的就是只能加一个方法到事件链上 
不能直接判断事件是否为null event只能放在+= 和 -=左边