とりあえず、C#からDockPanelを使ってレイアウトをする方法を書いた。
次は、同じ事をXAMLに書いてみようと思う。
上下左右と真ん中にボタンを置く。置く順番は左右上下にする。
DockPanelタグでDockPanelをあらわして、DockPanel.Dock属性をDockPanel内のButtonタグにつければいい。
割と簡単。XAMLの例と実行結果は下の通り。
<Window x:Class="XAMLDockPanel.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="XAML DockPanel" Height="300" Width="300">
<DockPanel>
<Button Content="Left" DockPanel.Dock="Left" />
<Button Content="Right" DockPanel.Dock="Right" />
<Button Content="Top" DockPanel.Dock="Top" />
<Button Content="Bottom" DockPanel.Dock="Bottom" />
<Button Content="Center"/>
</DockPanel>
</Window>
ちなみに上下右左の順番でボタンを追加すると、TopとButtomにあるボタンが横いっぱいに広がる。
<Window x:Class="XAMLDockPanel.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="XAML DockPanel" Height="300" Width="300">
<DockPanel>
<Button Content="Top" DockPanel.Dock="Top" />
<Button Content="Bottom" DockPanel.Dock="Bottom" />
<Button Content="Left" DockPanel.Dock="Left" />
<Button Content="Right" DockPanel.Dock="Right" />
<Button Content="Center"/>
</DockPanel>
</Window>
このレイアウトをベースに使うことが多いんだろうなぁ。
Topにメニューとかを置いてBottomにステータスバー。
左右に何かしらを置いて、Centerにメインコンテンツ。
ということでしっかり覚えておこう!