【VisualStudio】【C#】ウィンドウのリサイズを制限する 
2017/09/16 Sat [edit]
前回、固定ウィンドウの設定方法「Form.FormBorderStyle」プロパティを書いたが、他の方法としてリサイズでの制限も書いておこう。最小・最大を同じにすれば、実質固定ウィンドウになる(※ただし、フォーム右下でリサイズポインタになる)。
ウィンドウのリサイズを制限するにはフォームの「Form.MinimumSize」「Form.MaximumSize」プロパティを指定する。
![]() | ![]() |
(※) Visual Studio 2017 / Windows10(x64) で確認
しかし、せっかくビジュアルツールを使っているのだから、デザイン画面で設定したサイズをそのまま使いたいことも多い。なので、コードで書く方法も覚えておこう。
●リサイズに「元のサイズ~2倍」の制限を付ける
using System;
using System.Drawing;
using System.Windows.Forms;
namespace WindowsFormsApp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
//ウィンドウの最小サイズを初期サイズにする
this.MinimumSize = new Size(this.Width, this.Height);
//ウィンドウの最大サイズを初期サイズの2倍までにする
this.MaximumSize = new Size(this.Width * 2, this.Height * 2);
}
}
}


またあまりスマートなやり方とは言えないが、以下のように最小・最大サイズを元のサイズにすれば、リサイズできないウィンドウになる。ただし、フォーム右下でリサイズポインタになるので、フォームを固定サイズにした方がユーザーにとってもわかりやすいだろう。
this.MinimumSize = this.MaximumSize = new Size(this.Width, this.Height);
(関連記事)
【VisualStudio】フォームを固定ウィンドウ(ダイアログ)にする
【VisualStudio】ウィンドウの最大化・最小化を無効にする
- 関連記事
トラックバック
トラックバックURL
→http://fantom1x.blog130.fc2.com/tb.php/264-5cc37531
この記事にトラックバックする(FC2ブログユーザー)
| h o m e |