WinForm の自動拡大縮小を実現する方法

WinForm では、AutoScaleMode プロパティを設定することで、フォームの自動スケーリングを実現できます。AutoScaleMode プロパティには、次のオプションがあります:

  1. フォームやコントロールが自動でサイズ調整されません。
  2. システムのフォントサイズに連動し、フォームやコントロールのサイズを自動的に再調整します。
  3. DPI:ディスプレイのDPI設定に合わせてフォームやコントロールを自動的に拡大縮小します。
  4. 継承:親コントロールのAutoScaleModeプロパティを継承します。

AutoScaleModeプロパティは、フォントサイズに合わせてフォームとコントロールを自動で拡大縮小するFontが初期値です。

また、AutoScaleDimensions プロパティの設定でデザイン時のフォームサイズを指定することで、実行時に自動的にフォームとコントロールのサイズを拡大縮小することができます。

以下に、WinForm で自動スケーリングを実装する方法のサンプル コードを示します。

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        
        // 设置自动缩放模式为Font
        this.AutoScaleMode = AutoScaleMode.Font;

        // 设置设计时窗体大小
        this.AutoScaleDimensions = new SizeF(96F, 96F);
        this.AutoScaleMode = AutoScaleMode.Dpi;
    }
}

このコードでは、フォームの自動拡大縮小をフォントに設定し、AutoScaleDimensionsプロパティでフォームの設計時のサイズを指定します。プログラムを実行するとき、フォームとコントロールは、システムフォントのサイズに応じて自動的に拡大縮小されます。

bannerAds