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 に答える