WPF: DockPanel

Элемент DockPanel (Панель закрепления) используется для закрепления дочерних элементов слева, справа, сверху и снизу относительно других элементов. Положение дочерних элементов определяется свойством Dock соответствующих дочерних элементов и связанным порядком этих дочерних элементов. Значением свойства Dock по умолчанию является Left (слева). Свойство Dock принимает значения типа перечисления Dock, состоящего из значений Left, Right, Top и Bottom.

Создадим панель DockPanel с пятью кнопками Button. Четыре кнопки закрепляются, а для пятой закрепление не задано, и она заполняет всю оставшуюся область.


<DockPanel Name="dcPanel">        
     <Button Name="TopRect" DockPanel.Dock="Top" Background="LightGreen"
             Height="50" Content="Top"/>
     <Button Name="LeftRect" DockPanel.Dock="Left" Background="LightBlue"
             Width="50" Content="Left"/>
     <Button Name="RightRect" DockPanel.Dock="Right" Background="LightSalmon"
             Width="50" Content="Right"/>
     <Button Name="BottomRect" DockPanel.Dock="Bottom" Background="LightCyan"
             Height="50"/>
     <Button Name="Fill" Background="LightGray" />
 </DockPanel>

Теперь создадим элемент DockPanel динамически через код C#. Приведенный ниже код создает панель закрепления динамически, добавляет на нее пять элементов управления Button и устанавливает их свойства закрепления, используя метод SetDock.


private void CreateADockPanelDynamically()
 {
     // Создаем DockPanel
     DockPanel dcPanel = new DockPanel();
  
     // Создаем кнопку
     Button TopRect = new Button();
     TopRect.Background = new SolidColorBrush(Colors.LightGreen);
     TopRect.Height = 50;
     TopRect.Content = "Top";
     // Закрепляем кнопку сверху
     DockPanel.SetDock(TopRect, Dock.Top);
     // Добавляем закрепленную кнопку на панель DockPanel
     dcPanel.Children.Add(TopRect);
  
     // Создаем кнопку
     Button LeftRect = new Button();
     LeftRect.Background = new SolidColorBrush(Colors.LightBlue);
     LeftRect.Width = 50;
     LeftRect.Content = "Left";
     // Закрепляем кнопку слева
     DockPanel.SetDock(LeftRect, Dock.Left);
     // Добаляем закрепленную кнопку на панель DockPanel
     dcPanel.Children.Add(LeftRect);
  
     // Создаем кнопку
     Button RightRect = new Button();
     RightRect.Background = new SolidColorBrush(Colors.LightSalmon);
     RightRect.Width = 50;
     RightRect.Content = "Right";
     // Закрепляем кнопку слева
     DockPanel.SetDock(RightRect, Dock.Right);
     // Добавляем закрепленную кнопку на панель DockPanel
     dcPanel.Children.Add(RightRect);
  
     // Создаем кнопку
     Button BottomRect = new Button();
     BottomRect.Background = new SolidColorBrush(Colors.LightCyan);
     BottomRect.Height = 50;
     BottomRect.Content = "Bottom";
     // Закрепляем кнопку слева
     DockPanel.SetDock(BottomRect, Dock.Bottom);
     // Добавляем закрепленную кнопку на панель DockPanel
     dcPanel.Children.Add(BottomRect);
  
     // Создаем заполненную кнопку
     Button FillRect = new Button();
     BottomRect.Background = new SolidColorBrush(Colors.LightGray);
  
     // Добавляем закрепленную кнопку на панель DockPanel
     dcPanel.Children.Add(FillRect);
  
     RootWindow.Content = dcPanel;
}

Купить стиральный состав для пылесоса zelmer ost .