1

イベントハンドラーのフックを条件付きで解除したい。これはそれを行う正しい方法ですか:

tb.TextChanged -= textBoxIntName_TextChanged;

それを接続する必要があるので、これは賢明なようです:

tb.TextChanged += textBoxIntName_TextChanged;

...しかし、「Delphiの方法」に対応するものは、それ以上の意味があるようです(ただし、残念ながら、コンパイルされません)。

tb.TextChanged = nil;
4

1 に答える 1

5

イベントを割り当てることはできません。クライアントで使用できるのは、アタッチ(+ =)および削除(-=)操作のみです。

イベントの詳細については、こちらをご覧ください。

また、C#仕様に次のように書かれています。

+ =と-=は、イベントを宣言するタイプ以外のイベントで許可される唯一の操作であるため、外部コードはイベントのハンドラーを追加および削除できますが、他の方法でイベントハンドラーの基になるリストを取得または変更することはできません。 。

于 2012-04-27T22:02:27.420 に答える