VB.NET2005です。
AddHandler Me.Button1.Click, AddressOf Me.Button1_Click
のようにButton1_Clickに対してクリックイベントをハンドルしています。
処理上、他のイベントでも同じようにButton1_Clickに対してハンドル
している箇所があり、複数回のイベントが発生してしまっているので、
AddHandlerしたイベントのコレクションが参照できれば不要なイベントを
RemoveHandlerしたいと思っています。
出来る限り不要なイベントを追加しないようにコードを考慮しますが、
それでも漏れた場合の措置として考えています。
よろしくお願い致します。
AddHandler「された」イベントのリストであれば,Custom Event使ってAddHandler/RemoveHandlerをカスタマイズすることで入手出来ますが,
# デリゲートを自分で定義するので,GetInvocationListメソッド呼び出しすればよい
AddHandler「した」イベントのリストは,AddHandlerしたタイミングで,別途保存しておくしかないです。
お返事が遅くなり申し訳ございません。
GetInvocationListっていうのがあったんですね。
複数回イベント問題は根本的に解決しました。
恥ずかしながら私のバグ(見落とし)で思わぬイベント(この中でAddHandlerしています)が発生していただけでした。
お騒がせして本当に申し訳ございませんでした。
ありがとうございました。
ツイート | ![]() |