要件
設定ウィンドウ (メニューからアクセス可能) を持つ WinForms アプリケーション。その上で、アプリケーションの実行時に、アプリケーションのウィンドウを表示する前に、設定ウィンドウを最初に表示する必要があります。(これにより、ユーザーはアプリケーションを実行するたびに設定を確認/変更する必要があります)。
これまでの私の実装
とがMainForm
ありSettingsForm
ます。にはSettingsForm
、ウィンドウを閉じるときに内部的に保存されるいくつかの入力フィールドがあります。MainForm
を開くためのメニュー エントリが にありますSettingsForm
。SettingsForm
(メニューエントリを介して)表示するには、次のように呼び出します。
SettingsForm settingsForm = new SettingsForm();
settingsForm.Owner = this;
settingsForm.ShowDialog();
を表示するSettingsForm
前にを表示するために、他の処理を行う前MainForm
に で上記のコードを呼び出しMainForm_Load()
ます。
問題
アプリケーションを実行すると、SettingsForm
が表示されます。しかし、2〜3秒後にフリーズします。
はSettingsForm
「静的」です。その唯一のアクションは、ウィンドウを閉じるときに入力ファイルの値を保存することです。
[編集] 問題は、 に存在する によって生成されTimer
ましたMainForm
。したがって、全体的な設計は問題なく、有効なソリューションとして使用できます。