Современные бизнес-приложения обычно используют для своих элементов управления ка- кой-либо вид закрепления: панели инструментов могут быть закреплены наверху или по сторонам окна, строка состояния может находиться внизу и т. д. DockPanel предоставляет прикреплять элементы управления к одной из четырех сторон окна.
Если нам нужно создать окно с панелью инструментов, закрепленной в окне сверху и слева, а остальную часть экрана должен занимать холст, то надо сделать следующее:
<Window х:Class="ContosoAvalon.DockPanel"
xmlns="
Title="DockPanel" Height="300" Width="300">
<DockPanel Name="dockPanell">
с
CToolBar DockPanel.Dock="Top">
<Button BorderBrush="Black">Buttonl</Button>
</ToolBar>
CToolBar DockPanel.Dock="Left" MaxWidth="75">
<Button BorderBrush="Black">Button2</Button>
</ToolBar>
<Canvas>
<TextBlock>Canvas</TextBlock>
</Canvas>
</DockPanel>
</Window>
При помощи DockPanel вы можете разместить в определенное положение закрепления несколько элементов. На рис. 16.11 показано шесть закрепленных в окне областей: три из них прикреплены влево, и три — кверху.
А вот соответствующий код XAML:
<Window х:Class="ContosoAvalon.DockPanel"
xmlns="http: //schemas .microsoft. com/winfx/2006/xaml/presentation" xmlns:x="
Title="DockPanel" Height="300" Width="300">
<DockPanel Name="dockPanell">
<Button DockPanel.Dock="Left">Left #l</Button>
<Button DockPanel.Dock="Left">Left #2</Button>
<Button DockPanel.Dock="Left">Left #3</Button>
<Button DockPanel. Dock="Top,,>Top #l</Button>
<Button DockPanel.Dock="Top">Top #2</Button>
<Button DockPanel.Dock="Top">Top #3</Button>
</DockPanel>
</Window>
Рис. 16.11. Несколько элементов, прикрепленных к одной и той же стороне
Размеры всех элементов внутри панели DockPanel изменяются таким образом, что они остаются прикрепленными в своих назначенных положениях и полностью заполняют ту сторону окна, к которой они прикреплены.