3
我想知道我是否可以檢索事件的類對象的委託列表?有沒有辦法檢索事件的代理
我想知道我是否可以檢索事件的類對象的委託列表?有沒有辦法檢索事件的代理
如果您自己實現了該事件,那麼假設您有權訪問它,則可以在委託上調用GetInvocationList
(即,從另一個類獲取調用列表,必須公開委託字段或必須返回調用列表從公開的方法)。
如果這是一個自動事件,則該字段爲private
,並且您只能在班級中致電GetInvocationList
。您將需要這樣做,並從public
方法返回結果以從另一個類獲取列表。
+1。我會補充說,沒有要求對象必須首先將事件的偵聽器存儲在多播委託字段中 - 它可以做任何感覺像在訂閱/取消訂閱方法。如果它在每個事件的基礎上選擇了一個'Dictionary'(鍵是事件名稱)或'List 「呢? –
Ani
2010-12-16 10:42:24
@Ani:絕對。但是,如果你不這樣做,那麼基本場景(調用所有用戶)就不那麼簡單了,所以我們必須在那裏談論真正的高級用法。 – Jon 2010-12-16 10:45:12