ここで質問した問題のバリエーションに遭遇しました。クラスを拡張する代わりに、イベントを持たないSystem.Windows.Formクラスを拡張します。System.Windows.UserControlFormClosing
Closeユーザー コントロールにメソッドを追加して、ネイティブ スレッドに停止を指示することを考えました。停止すると、それDispose自体を呼び出すユーザー コントロールにイベントを発生させます。このアプローチの問題はDispose、オブジェクトから呼び出して破棄する (自殺?) ことは悪い習慣のように思われ、(二重破棄を避けるために) 何もしないファイナライザーを作成する必要があり、さらに気分が悪くなります...
提案?
更新:私のユーザー コントロールは を拡張するクラス内に存在しSystem.Windows.Forms.ToolStripControlHost、そのクラスのインスタンスはメイン アプリケーション フォームに存在します。