NTシステムデザインの技術メモ

CSharpメモ

最終更新:

ntaka206

- view
管理者のみ編集可

Dock = DockStyle.Fill でのコントロールの配置が上手くいかない時


例えば
 gropuBox1
 splitContainer2
 hscrollbar
の順番でフォームに配置する場合。
まず、Dockプロパティを設定する。
this.groupBox1.Dock = System.Windows.Forms.DockStyle.Top;	// フォーム上端に貼り付け
this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;	// フォーム余白いっぱいに貼り付け
this.hscrollbar.Dock = System.Windows.Forms.DockStyle.Bottom;	// フォーム下端に貼り付け
ここが大事、以下の順番でフォームにaddすること。
this.Controls.Add( this.splitContainer2 );
this.Controls.Add( this.groupBox1 );
this.Controls.Add( this.hscrollbar );
イメージとしては、
まずsplitContiner2がfillして
GroupBox1がTopに割り込み
hscrollbarがBottomに割り込み

これでも上手くいかないときは、Z orderが関係する場合もあるらしい。
BringToFron(), SendToBack()など。
目安箱バナー