0

我在拆分容器中有一个拆分容器,当我将 SplitterDistance 设置为小于 25 像素时,SplitterDistance 不会变小。我可以在运行时使它小于 25 像素,没有问题。我可以通过代码或设计器使其更大,并且在运行时没有问题。我想将它设置为大约 20 像素,而用户不必重新调整它的大小。有谁知道为什么它会一直恢复到 25 像素,以及是否有任何方法可以得到它?

我试过这个,但它不起作用:

        // 
        // splitContainer3
        // 
        this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill;
        this.splitContainer3.Location = new System.Drawing.Point(0, 0);
        this.splitContainer3.Name = "splitContainer3";
        this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal;
        // 
        // splitContainer3.Panel1
        // 
        this.splitContainer3.Panel1.RightToLeft = System.Windows.Forms.RightToLeft.No;
        this.splitContainer3.Panel1MinSize = 5;
        // 
        // splitContainer3.Panel2
        // 
        this.splitContainer3.Panel2.Controls.Add(this.txtLineNums);
        this.splitContainer3.Panel2.RightToLeft = System.Windows.Forms.RightToLeft.No;
        this.splitContainer3.Panel2MinSize = 5;
        this.splitContainer3.RightToLeft = System.Windows.Forms.RightToLeft.No;
        this.splitContainer3.Size = new System.Drawing.Size(47, 562);
        this.splitContainer3.SplitterDistance = 20;
        this.splitContainer3.SplitterWidth = 2;
        this.splitContainer3.TabIndex = 0;
        this.splitContainer3.TabStop = false;

谢谢!

4

1 回答 1

6

确保您的拆分容器面板 MinSizes 没有设置得太高而无法降至 20。默认面板 MinSizes 为 25。拆分器距离将尽可能低而不会影响它。

面板大小在整体拆分容器属性中设置。您可以在下面看到:

在此处输入图像描述

当然,您始终可以通过深入了解代码中的拆分容器属性以编程方式设置它们:

splitContainer1.Panel1MinSize = 0;
splitContainer1.SplitterDistance = 20;

[编辑]

进一步演示如下图:

在此处输入图像描述

在此处输入图像描述

于 2015-03-25T16:35:21.573 回答