我想用MDI做類似的事情,但我不知道如何。現在我只有孩子在級聯模式。MDI兒童表格沒有自由空間
我可是從聖誕節回來,從我的家鄉,每天開始工作。 :)
我一定需要SuspendLayout和ISupportIntialize?
我不提示如何使用SuspendLayout和ISupportIntialize或FixedPanel。所以,我這樣做:)
http://i.stack.imgur.com/Wltvd.png
爲1/2/3/4之間的面板顯示模式我嘗試使用[選擇案例]自動檢查。
public partial class MainForm : Form
{
Child1Form1 Test1 = new Child1Form1();
Child1Form2 Test2 = new Child1Form2();
Child1Form3 Test3 = new Child1Form3();
Child1Form4 Test4 = new Child1Form4();
public MainForm()
{
InitializeComponent();
this.AutoSizeMode = AutoSizeMode.GrowAndShrink;
this.SizeGripStyle = SizeGripStyle.Show;
//
// splitContainer1
//
//this.splitContainer1.Dock = DockStyle.Fill;
this.splitContainer1.FixedPanel = FixedPanel.Panel1;
this.splitContainer1.FixedPanel = FixedPanel.Panel2;
this.splitContainer1.Panel1.Controls.Add(splitContainer2);
this.splitContainer1.Panel2.Controls.Add(splitContainer3);
//
// splitContainer2
//
//this.splitContainer2.Dock = DockStyle.Fill;
this.splitContainer2.FixedPanel = FixedPanel.Panel1;
this.splitContainer2.FixedPanel = FixedPanel.Panel2;
this.splitContainer2.Panel1.Controls.Add(Test1);
this.splitContainer2.Panel2.Controls.Add(Test2);
//
// splitContainer3
//
//splitContainer3.Dock = DockStyle.Fill;
this.splitContainer3.Panel1.Controls.Add(Test3);
this.splitContainer3.Panel2.Controls.Add(Test4);
this.Test1.Dock = DockStyle.Fill;
this.Test2.Dock = DockStyle.Fill;
this.Test3.Dock = DockStyle.Fill;
this.Test4.Dock = DockStyle.Fill;
}
private void Form1_Load(object sender, EventArgs e)
{
this.Test1.Show();
this.Test2.Show();
this.Test3.Show();
this.Test4.Show();
}
private void splitContainer1_Resize(object sender, EventArgs e)
{
this.Test1.Dock = DockStyle.Fill;
this.Test2.Dock = DockStyle.Fill;
this.Test3.Dock = DockStyle.Fill;
this.Test4.Dock = DockStyle.Fill;
}
propestipes.DOCK但meyby我必須結合更多的,我不知道現在。 – Vanguard1990
好吧,顯然你不想要MDI。 WeiFen Luo的DockPanelSuite很受歡迎,價格合適。 –
彼得已經給出了一個答案,可以爲您提供靈感/解決方案,如果您使用WinForms。如果您使用WPF而不是WinForms,請讓我們知道... – elgonzo