【C#,WPF】最大化・最小化・閉じるボタンの非表示設定

【C#,WPF】最大化・最小化・閉じるボタンの非表示設定

WPFでウィンドウを作成している際に、右上の最大化・最小化・閉じるボタンを非表示にしたいときがあります。タイトルバーごと非表示にするには、Windowの「WindowStyle」プロパティを「None」にすればいいですが、今回はタイトルバーを残しつつボタンのみを非表示にする方法を解説します。

サンプルコード(XAML)

サンプルコード(C#)

解説

重要な箇所は、MainWindow.xaml.csの13〜33行目、「#region 」で囲んだ部分です。
ここを丸ごとウィンドウのクラス内に追加することで、最大化・最小化・閉じるボタンが非表示となります。
また、これらの処理は「System.Runtime.InteropServices」「System.Windows.Interop」の参照が必要なので、csファイルの先頭(3~4行目)でusingしています。

サンプルプロジェクト

GitHubに今回のサンプルプロジェクト一式をアップロードしています。
GitHub – Kuwayoshi/WindowMenuButtonHidden
実際に動かして確認したい方などは、上記ページからダウンロードしてください。

まとめ

タイトルバーを表示しつつ、右上のボタンを非表示にする方法を紹介しました。
「最大化・最小化・閉じるなどの動作を禁止したいけど、タイトルバーのドラッグによるウィンドウ移動は残したい」といったときなどに、ご活用ください。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です