2

重複の可能性:
C#でWindowsフォームの複数のインスタンスを回避する方法

開いているフォームをMDIフォームとして作成せずに、アプリケーションで1回だけ表示したい。

4

3 に答える 3

17

コードからフォームを開く前に、Application.OpenFormsプロパティをチェックして、フォームがコレクションに存在するかどうかを確認します。

何かのようなもの:

if ((Application.OpenForms["Form1"] as Form1) != null)
{
 //Form is already open
}
else
{
// Form is not open
}
于 2013-01-16T05:32:32.717 に答える
0

フォームを開くには、show\hide メソッドを使用するだけです。また、これを表示するたびに、すべてのフォーム フィールドを初期化する必要があります。

于 2013-01-16T05:36:34.073 に答える
0

フォームが表示されたら true に設定したデフォルト値 false のブール変数を使用し、フォームを開くときに変数を確認します。

于 2013-01-16T05:36:34.137 に答える