1.あるフォームを初期表示の際に、タスクバーが見える状態で最大表示したい
2.以後は、フォームのサイズを任意に変更させず、最大 or 最小としたい
2.については、FormBorderStyleを、FixedSingleに設定し、最大化ボタンも無効とすることで、実現することができました。
(タイトルバーのダブルクリックについても、ウインドウメッセージを監視し、サイズ変更できないようにしています。)
しかし、どうしても、1.について実現方法が分かりません。
this.WindowState = FormWindowState.Maximized;
上記の一文を記述すれば、希望の結果が得られると思っていたのですが、フォームがディスプレイいっぱいに表示され、タスクバーが隠れる or タスクバーに隠れることになってしまいます。
フォームの最大化ボタンを押した際の、これと同じ動作を実現したいのですが。
あるサイトを参考に、
デスクトップのワーキングエリアと、ウインドウの枠サイズを取得し、そこから、フォームのサイズを導出し、希望に近しい結果を得ようともしましたが、どうしても、最大とはいえないサイズになってしまいますし、致命的に画面表示が遅いです。
どなたかいい案をご教示頂けないでしょうか?

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/06 05:18
2019/02/06 05:22 編集
2019/02/06 05:27
2019/02/06 05:30
2019/02/06 05:46
2019/02/06 06:14
2019/02/07 03:54
2019/02/07 04:02 編集