How to use the splitContainer in winforms

The SplitContainer control is a container control used in Windows Forms to divide interface areas. It offers a draggable separator that can be used to adjust the size ratio between two child controls.

The SplitContainer control allows you to achieve the following functions:

  1. SplitContainer control can divide the form into two vertical or horizontal regions, allowing different child controls to be placed in each region.
  2. Adjust the size ratio of the regions: You can adjust the size ratio of the two regions in real-time by dragging the divider to meet different layout requirements.
  3. Hide or display a specific area: You can hide or display a specific area by setting the SplitContainer.Panel1Collapsed or SplitContainer.Panel2Collapsed properties.
  4. Change the position of the splitter dynamically: You can adjust the position of the splitter by setting the SplitContainer.SplitterDistance property, allowing for dynamic layout adjustments on the interface.

The steps for using the SplitContainer control are as follows:

  1. Drag and drop a SplitContainer control onto the form.
  2. Drag and drop the child controls that need to be placed in the two areas of SplitContainer onto the two Panels of the SplitContainer.
  3. You can adjust the style, initial position, etc. of the splitter bar by setting the properties of the SplitContainer.
  4. You can dynamically change the position of the splitter bar, hide or show a specific area by setting the properties of SplitContainer through code.

For example, the code below demonstrates how to use the SplitContainer control.

// 创建一个SplitContainer控件
SplitContainer splitContainer = new SplitContainer();
splitContainer.Dock = DockStyle.Fill;
this.Controls.Add(splitContainer);

// 创建两个面板,并将其添加到SplitContainer中
Panel panel1 = new Panel();
Panel panel2 = new Panel();
splitContainer.Panel1.Controls.Add(panel1);
splitContainer.Panel2.Controls.Add(panel2);

// 设置SplitContainer的属性
splitContainer.SplitterDistance = 200;
splitContainer.IsSplitterFixed = true;

// 其他操作,如设置子控件的属性、事件处理等

The code above creates a SplitContainer control with its Dock property set to Fill, making it fill the entire form. Two Panel controls are then created and added to each panel of the SplitContainer. The SplitContainer’s SplitterDistance property is set to 200, indicating an initial size ratio of 1:1 between the two areas. The IsSplitterFixed property is set to true, indicating that the splitter cannot be dragged to change the size.

It is important to note that the SplitContainer control can only contain two child controls, not more. If you need to divide more areas, you can achieve this by nesting multiple SplitContainers.

Leave a Reply 0

Your email address will not be published. Required fields are marked *