NotifyIcon を使用してトレイに最小化するアプリを正常に作成しました。フォームを手動で閉じると、デスクトップ、タスクバー、および alt-tab から正常に非表示になります。この問題は、アプリを最小化して起動しようとすると発生します。最初の問題は、アプリが最小化されても、alt-tab ダイアログにまだ表示されることでした。FormBorderStyle を (「なし」オプションから) ToolWindow オプションの 1 つに変更すると、これは修正されましたが、別の問題が発生しました。アプリが最初に起動すると、最小化されたウィンドウのタイトルバーがスタート メニューのすぐ上に表示されます。
フォームを開いて閉じると、適切に非表示になります。いろいろ試してみましたが、基本的にはこんな感じです...
WindowState は Designer で Minimized に設定されています。コンストラクターで初期化した後、次の行があります。
this.Visible = false;
this.ShowInTaskbar = false;
NotifyIcon をダブルクリックすると、次のようになります。
this.WindowState = FormWindowState.Normal;
this.Visible = true;
this.ShowInTaskbar = true;
私が言ったように、私はこれ (this.Hide() など) の小さなバリエーションをたくさん試しました。NotifyIcon を実行したままフォームを完全に開始して破棄できるように、NotifyIcon をプライマリ コンポーネントにする方法はありますか? フォームを最小化した状態でアプリを開始する際に、奇妙さを感じさせない方法が必要です。見つけるのを手伝ってください!