StackLayoutパネルを使って縦や横にボタンを並べたりしたけど、それだけじゃぁ実際には画面を作れない。
ということで、引き続きレイアウトについてお試し。
DockPanelの使い方を調べてみた。
このパネルは、上下左右と中央にものを配置できる。
Java知ってる人向けに言うと、BorderLayoutとほぼ同じ。
使い方は簡単で、下の手順で使っていく。
- DockPanelのインスタンスを作成
- DockPanelに置くもののインスタンスを作成
- DockPanel.SetDock(DockPanelに置くもの, DockのTopとかRightとか)で場所を決める
- DockPanelのインスタンスのChildren.AddでDockPanelに追加
- 真ん中に置くものはSetDockをせずに最後にAddする
コードで書くとこんな感じ
DockPanel panel = new DockPanel();
// DockPanelをウィンドウに置く
this.AddChild(panel);
// 左側
Button btnLeft = new Button();
btnLeft.Content = "Left";
btnLeft.Width = 100;
DockPanel.SetDock(btnLeft, Dock.Left);
panel.Children.Add(btnLeft);
// 右側
Button btnRight = new Button();
btnRight.Content = "Right";
btnRight.Width = 100;
DockPanel.SetDock(btnRight, Dock.Right);
panel.Children.Add(btnRight);
// 上側
Button btnTop = new Button();
btnTop.Content = "Top";
btnTop.Height = 50;
DockPanel.SetDock(btnTop, Dock.Top);
panel.Children.Add(btnTop);
// 下側
Button btnBottom = new Button();
btnBottom.Content = "Bottom";
btnBottom.Height = 50;
DockPanel.SetDock(btnBottom, Dock.Bottom);
panel.Children.Add(btnBottom);
// ど真ん中
Button btnCenter = new Button();
btnCenter.Content = "Center";
panel.Children.Add(btnCenter);
これで上下左右と真ん中にボタンが配置される。
画面の画像は、今ちょっとUPできないので次のXAML版の時にでも…