フォームの最小サイズを設定する - 指定した幅、高さより小さくリサイズできないウインドウの作成 - C#

ウィンドウの高さと幅を一定値以下にできないフォームの作成方法を紹介します。

フォームのMinimumSizeプロパティを設定することで、ウィンドウの高さと幅の最小値を設定できます。

UI

下図のUIを準備します。何も手を加えていない新規作成直後のフォームです。


プロパティの設定

フォームを選択し、プロパティウィンドウを表示します。プロパティの一覧の中からMinimumSizeプロパティの値を確認します。デフォルトでは"0,0"が設定されています。


MinimumSizeプロパティの値を変更します。今回は"240,120"に設定しました。

実行結果

プロジェクトを実行します。下図のウィンドウが表示されます。


ウィンドウの境界をドラッグしてリサイズします。フォームのMinimuxSizeプロパティで指定した値よりウィンドウの幅や高さを小さくできなくなります。(下図参照)

MinimumSizeプロパティをプログラムコードから設定する

MinumumSizeをコードで設定する方法を紹介します。

UI

下図のUIを準備します。

コード

下記のコードを記述します。実際にはボタンのClickイベントを実行します。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace FormWidthHeightSize
{
  public partial class FormMain : Form
  {
    public FormMain()
    {
      InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
      this.MinimumSize = new Size(240,100);
    }
  }
}

解説

this.MinimumSize = new Size(240,100);
上記のコードによりMinimumSizeプロパティを指定します。MinimumSizeプロパティはSize構造体(System.Drawing.Size)を代入して設定します。

実行結果

プロジェクトを実行します。下図のウィンドウが表示されます。


ボタンを押さない状態では、ウィンドウをリサイズすると下図のように幅と高さを小さくできます。


ボタンをクリックした後にリサイズをすると下図より小さくリサイズできなくなります。

著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
掲載日: 2012-05-13
iPentec all rights reserverd.