複数のフォームを持つ C# アプリケーションに取り組んでいます。
フォームの 1 つを開くと、次のようなイベント リスナーを追加しますSomeClass.MotionCompleted += new EventHandler(HandlerMethod);
。MotionCompleted イベントは静的イベントです。
このフォームを閉じた後も、イベントが発生したときに HandlerMethod が呼び出され、フォーム上の存在しない何かを更新しようとするため、例外が発生することに気付きました。
フォームがもう存在しない場合でも、イベントリスナーはどのように存在し、イベントに応答できますか? form.Close() または this.Close() が呼び出されたら、イベント リスナを自動的にアンフックして、もう呼び出されないようにするべきではありませんか?