0

2 つの Windows アプリは、.net リモート処理を介して通信します。ホストは、クライアントがリモート処理を通じてメソッドを呼び出すことができるクラスのインスタンスを発行します。

このクラスには、まだ表示されていない場合に form.Show() を使用してフォームをポップアップし、スレッドでいくつかの機能を実行するメソッドがあります。

スレッドが完了すると、フォームを明示的に閉じなくてもフォームが消えます。クラスのインスタンスはスコープ外に出ず、クラス インスタンスはフォームへの参照を維持します。

フォームが消えたくないので、Form.Show(System.Windows.Forms.IWin32Window) オーバーロードを使用すると、アプリケーションのメイン フォームを Show メソッドに渡すとこれが機能すると考えています。問題は、クラス インスタンスがアプリケーションについて何も知らないことです。アプリケーションのメインフォームを見つける方法はありますか?

フォームが作成され、スレッド内に表示されます。

4

0 に答える 0