无法测试Button.click事件是否为空

时间:2012-07-31 09:23:42

标签: c# outlook add-in

我需要测试我的button.Click事件是否为空。这是c#中的事件:

button.Click += new Office._CommandBarButtonEvents_ClickEventHandler(Lancement_Formualire_Event);

我用

进行了测试
(button.Click == null) 

但编译器拒绝这样做。

2 个答案:

答案 0 :(得分:5)

  

我测试过(bouton.Click == null),但编译器拒绝这样做。

事实上。事件的抽象不允许这样做。允许您执行的所有事件都是订阅它,或取消订阅它。你不应该关心其他订阅者。

答案 1 :(得分:1)

如果使用空的“包装器”扩展Button类,您可能会完成所需的操作,而后者又会实现自己的Click事件并将其转发给Button.Click

不同之处在于,您的自定义“包装器”可以使用非常event对象,可以按照您的意愿进行检查。

它类似于实现INotifyPropertyChanged时通常所做的,并且应该满足您的需求。