11
是否有可能去除附着匿名功能的事件處理程序?比方說,我有一個事件,我訂閱了它這樣:
TestClass classs = new TestClass();
classs.myCustomEvent += (a,b) => { Console.Write(""); };
是否有可能以某種方式來刪除使用此事件處理 - =?
是否有可能去除附着匿名功能的事件處理程序?比方說,我有一個事件,我訂閱了它這樣:
TestClass classs = new TestClass();
classs.myCustomEvent += (a,b) => { Console.Write(""); };
是否有可能以某種方式來刪除使用此事件處理 - =?
這是可能的,但你需要它首先存儲在一個局部變量:
MyDelegate handler = (a, b) => { Console.Write(""); };
class.myCustomEvent += handler;
class.myCustomEvent -= handler;
不知道爲什麼,這是downvoted ... + 1,這是一個正確的答案。除了關於「本地」變量的部分:在大多數情況下,您需要將它存儲在更長的位置...... –