メインフォームに対して動的にコントロールを追加したり削除したりする場合、別のフォームを入れ込みたいときがある。こうするとGUI上でフォームを配置できて便利だ。
コード:
var form = new Form2(); form.TopLevel = false; form.Dock = DockStyle.Fill; form.FormBorderStyle = FormBorderStyle.None; form.Show();
- フォームに登録するフォームは、form.TopLevel=false なものでなくてはいけない。
- フォームに登録する場合、スプリットコントロールやタブコントロールに、DockingをFillにするとよい。そうでないと単なる子フォームになり、MDI的なUIになる。
- FormBorderStyleをなくすことで、子となるフォームを、フォームでなく、単純なコントロールとして振舞わせている。