Posted 13 May 2019, 6:08 am EST
Hello,
I think that you are setting the Dock property of the last splitter panel to Right which is why you are not getting the layout as desired. I would like to let you know that the last visible panel (C1SplitterPanel) that is added to the Split Layout( i.e C1SplitContainer) is a special case. It always behaves as if its Dock property is set to Fill (all four sides of the control are resized to match the containing control’s edges). Values of the following properties are ignored for the last visible panel: Collapsible, ResizeWhileDragging, Dock, SizeRatio, KeepRelativeSize, and Resizable. Also, an attempt to change the Width or the Height property of such a panel has no visible effect. This information is mentioned here:
https://help.grapecity.com/componentone/NetHelp/C1SplitContainer/webframe.html#splitcontainerlayout1.html
So in order to have a split layout containing two Splitter panels docked to top and one docked to right, instead of setting the Dock property to Right for the last panel set the Dock property to Right for the first panel. This will causes the panel to align itself with the right edges of its parent control. For the second panel set the Dock property to Top. This will cause the second panel to align itself with the top edges of its parent control. There is no need of setting the Dock property for the last panel as it will now automatically behave as if its Dock property is set to Fill and thereby result in a layout where two splitter panels would be on the left and one would be on the right.
The code below depicts the same:
c1SplitterPanel1.Dock = PanelDockStyle.Right; //Docks the splitter panel to the right
c1SplitterPanel2.Dock = PanelDockStyle.Top; //Docks the splitter panel to the top
Also find attached a sample(‘Dock_SplitterPanel.zip’) demonstrating the same. Dock_SplitterPanel.zip
Please let us know in case you have any other queries.