Relating to my prior post I believe I've pinned down my problem a little better.
I have 4 panels in a form. The first panel is docked to the right side of the form, and two panels are docked to bottom of the first panel. The 4th panel is docked to the left of the form. The docking manager is then set to DockToFill so that the 4th panel will fill the entire form whenever all the other three panels are collapsed.
What I find:
When DockToFill = false, all the panels behave as expected. The 4th panel takes up the majority of the space as planned, while the other three take up a column on the right and the first three panels all collapse to the right.
When DockToFill = true, problems arise in where the panels collapse. The first panel collapses to the right of the form (as expected), however the other two panels (which were docked to the bottom of the first panel) collapse to the bottom of the form.
I've attached a picture of the end result. Here is the source code:
private void Form1_Load(object sender, EventArgs e)
{
this.dockingManager1.SetEnableDocking(panel1, true);
this.dockingManager1.SetEnableDocking(panel2, true);
this.dockingManager1.SetEnableDocking(panel3, true);
this.dockingManager1.SetEnableDocking(panel4, true);
this.dockingManager1.DockControl(this.panel1, this, DockingStyle.Right, 100);
this.dockingManager1.DockControl(this.panel2, panel1, DockingStyle.Bottom, 100);
this.dockingManager1.DockControl(this.panel3, panel1, DockingStyle.Bottom, 100);
this.dockingManager1.DockControl(this.panel4, this, DockingStyle.Left, 425);
this.dockingManager1.SetDockLabel(this.panel1, "Panel1");
this.dockingManager1.SetDockLabel(this.panel2, "Panel2");
this.dockingManager1.SetDockLabel(this.panel3, "Panel3");
this.dockingManager1.SetDockLabel(this.panel4, "Panel4");
}
Syncfusion-Example2_635f7f83.GIF