C 在類中如何註冊事件與取消事件註冊?

2021-09-30 03:44:51 字數 393 閱讀 6422

以:按鈕的單擊來舉例 名為 button1

首先:註冊按鈕單擊事件的方法為:button1.click += new system.eventhandler(this.button1_click);

取消註冊事件的方法為:button1.click -= new system.eventhandler(this.button1_click);

但我想實現如下的效果怎麼做?

把 button1 傳到乙個類中,在此類中實現 button1 單擊事件的註冊與取消註冊。

首先經本人測試:用委託,把button1的事件傳到類中,用+=實現註冊,用-=實現取消註冊,但結果是為button1的click會執行多次?

那麼,如何才能保證徹底取消click事件,如何保證用+=只執行一次click?

c 如何取得事件註冊的方法

這個問題來自論壇,原文為如何判斷事件已經被註冊過?用反射取出事件繫結的委託例項,然後用getinvocationlist就可以得到所有註冊的方法了。using system using system.collections.generic using system.componentmodel us...

c 如何取得事件註冊的方法

這個問題來自論壇,原文為如何判斷事件已經被註冊過?用反射取出事件繫結的委託例項,然後用getinvocationlist就可以得到所有註冊的方法了。using system using system.collections.generic using system.componentmodel us...

c 如何取得事件註冊的方法

這個問題來自論壇,原文為如何判斷事件已經被註冊過?用反射取出事件繫結的委託例項,然後用getinvocationlist就可以得到所有註冊的方法了。using system using system.collections.generic using system.componentmodel us...