タイトル
 メニューにないコーナーはTopからいけます
TOP.NETWindowsForm → This Page

.NET プログラミングのコーナー
Windowsフォーム関連 > フォーム関連 > フォーム内フォーム


概要


フォームの中にフォームを表示するサンプルです。


サンプルイメージ


サンプル画像


サンプルソース(一部抜粋)


C#

private Form2 mForm;

// フォーム2を内部に表示
private void Button1_Click(object sender, System.EventArgs e)
{
	if (mForm != null)
	{
		return;
	}

	mForm = new Form2();

	// トップレベルウィンドウとしない
	mForm.TopLevel = false;

	// 呼び出し先フォームを呼び出し元フォームのコントロールとして追加
	this.Controls.Add(mForm);

	// 位置設定
	mForm.Location = new System.Drawing.Point(40, 40);

	// 表示
	mForm.Show();

	// 最前面にする
	mForm.BringToFront();
}

// フォーム2を閉じる
private void Button2_Click(object sender, System.EventArgs e)
{
	if (mForm != null)
	{
		mForm.Close();
		mForm.Dispose();
		mForm = null;
	}
}


--------------------------------------------------------------------------------
VB.NET

Private mForm As Form2

'フォーム2を内部に表示
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    If IsNothing(mForm) = False Then
        Exit Sub
    End If

    mForm = New Form2

    'トップレベルウィンドウとしない
    mForm.TopLevel = False

    '呼び出し先フォームを呼び出し元フォームのコントロールとして追加
    Me.Controls.Add(mForm)

    '位置設定
    mForm.Location = New System.Drawing.Point(40, 40)

    '表示
    mForm.Show()

    '最前面にする
    mForm.BringToFront()
End Sub

'フォーム2を閉じる
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    If IsNothing(mForm) = False Then
        mForm.Close()
        mForm.Dispose()
        mForm = Nothing
    End If
End Sub

サンプルソースのダウンロード


ソースのダウンロード


TOP.NETWindowsForm → This Page
Valid CSS!