3
クラスオブジェクトのイベントのデリゲートリストを取得できるかどうかは疑問です。イベントのデリゲートを取得する方法はありますか
クラスオブジェクトのイベントのデリゲートリストを取得できるかどうかは疑問です。イベントのデリゲートを取得する方法はありますか
自分でイベントを実装した場合は、アクセス権があると仮定して代理人にGetInvocationList
を呼び出すことができます(つまり、別のクラスから呼び出しリストを取得するには、代理フィールドがpublicである必要があります。パブリックメソッドから)。
自動イベントの場合、フィールドはprivate
であり、クラス内からはGetInvocationList
にしかコールできません。別のクラスからリストを取得するには、それを実行してpublic
メソッドの結果を戻す必要があります。
+1。私は、オブジェクトが最初にマルチキャストデリゲートフィールドにイベントのリスナーを格納しなければならないという要件はないということを付け加えます。subscribe/unsubscribeメソッドのように感じることは何でもできます。イベントごとに 'Dictionary'(キーはイベント名)または 'List 'を選択した場合はどうなりますか? –
Ani
@Ani:確かに。しかし、そうしなければ、基本的なシナリオ(すべての加入者を呼び出す)は簡単ではありませんので、そこでの高度な使い方について話をしなければなりません。 – Jon