C#でフォームを分割するSplitContainerでサンプルを作る

コンピュータ

SplitContainerを使うとフォーム上にコントロールを2分割配置することが出来ます。

シンプルに左右分割

using System;
using System.Windows.Forms;
using System.Drawing;
// 
// SplitContainerのサンプル
// 

class Form1 : Form
{
    SplitContainer splitContainer;
    Form1()
    {
        splitContainer = new SplitContainer()
        {
            Dock = DockStyle.Fill,
        };

        this.Controls.Add(splitContainer);
    }
    static void Main()
    {
        Application.Run(new Form1());
    }
}


分割の境界部をマウスで移動させることで割合を動的に変更も可能です。

上下分割と左右分割の入れ子

using System;
using System.Windows.Forms;
using System.Drawing;
// 
// SplitContainerのサンプル2
// 

class Form1 : Form
{
    SplitContainer splitContainerUD;
    SplitContainer splitContainerLR;

    Form1()
    {
        splitContainerUD = new SplitContainer()
        {
            Dock = DockStyle.Fill,
            Orientation = Orientation.Horizontal,
        };
        splitContainerLR = new SplitContainer()
        {
            Dock = DockStyle.Fill,
        };
        splitContainerLR.Panel1.BackColor = Color.AliceBlue;
        splitContainerLR.Panel2.BackColor = Color.Aqua;
        splitContainerUD.Panel1.Controls.Add(splitContainerLR);
        this.Controls.Add(splitContainerUD);
    }
    static void Main()
    {
        Application.Run(new Form1());
    }
}


コントロールの背景に色がついているのは分割を見やすくするためです。

このコントロールを使うと何が嬉しいかというと、フォームのウィンドウサイズの変更に対し連動してコントールのサイズ変更が出来る点です。

コメント