Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Wpf-АК11.doc
Скачиваний:
6
Добавлен:
01.03.2025
Размер:
3 Мб
Скачать
☆

4. Элементуправления StackPanel

Элемент управления StackPanel также прост. Он располагает свое содержимое по вертикали или горизонтали в зависимости от значения свойства Orientation.

На рис. 3.2 показан элемент управления StackPanel с двумя дочерними элементами, один над другим.

Рис. 3.2 - Элемент управления StackPanel

Пример кода XAML:

<Window

   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

   x:Class="WPF_Tour_Beginners_Layout.StackPanelDEMO"

   x:Name="Window"

   Title="StackPanelDEMO"

   WindowStartupLocation="CenterScreen"

   Width="640" Height="480">

   <StackPanel Margin="0,0,0,0" Background="White" Orientation="Vertical">

     <Button Content="Im Top of Stack"/>

     <Button Content="Im Bottom Of Stack"/>

 </StackPanel>

</Window>

Примеркода C#:

StackPanel sp = new StackPanel();

//добавитьэлемент StackPanel вкачествеединственногодочернегоэлемента Window

this.Content = sp;

sp.Margin = new Thickness(0, 0, 0, 0);

sp.Background = new SolidColorBrush(Colors.White);

sp.Orientation = Orientation.Vertical;

//Кнопка 1

Button b1 = new Button();

b1.Content = "Im Top of Stack";

sp.Children.Add(b1);

//Кнопка 2

Button b2 = new Button();

b2.Content = "Im Bottom of Stack";

sp.Children.Add(b2);

5. Элементуправления WrapPanel

На рис. 3.3 показан элемент управления WrapPanel с десятью дочерними элементами.

Рис. 3.3 - Элемент управления WrapPanel

Пример кодаXAML:

<Window

   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

   x:Class="WPF_Tour_Beginners_Layout.WrapPanelDEMO"

   x:Name="Window"

   Title="WrapPanelDEMO"

   WindowStartupLocation="CenterScreen"

   Width="640" Height="480">

       <WrapPanel Margin="0,0,0,0" Background="White">

           <Rectangle Margin="10,10,10,10" Fill ="Blue" Width="60" Height="60"/>

           <Rectangle Margin="10,10,10,10" Fill ="Blue" Width="60" Height="60"/>

           <Rectangle Margin="10,10,10,10" Fill ="Blue" Width="60" Height="60"/>

           <Rectangle Margin="10,10,10,10" Fill ="Blue" Width="60" Height="60"/>

           <Rectangle Margin="10,10,10,10" Fill ="Blue" Width="60" Height="60"/>

           <Rectangle Margin="10,10,10,10" Fill ="Blue" Width="60" Height="60"/>

           <Rectangle Margin="10,10,10,10" Fill ="Blue" Width="60" Height="60"/>

           <Rectangle Margin="10,10,10,10" Fill ="Blue" Width="60" Height="60"/>

           <Rectangle Margin="10,10,10,10" Fill ="Blue" Width="60" Height="60"/>

           <Rectangle Margin="10,10,10,10" Fill ="Blue" Width="60" Height="60"/>

           <Rectangle Margin="10,10,10,10" Fill ="Blue" Width="60" Height="60"/>

   </WrapPanel>

</Window>

Примеркода C#:

WrapPanelwp = newWrapPanel();

//добавить элемент WrapPanel в качестве единственного дочернего элемента Window

this.Content = wp;

wp.Margin = new Thickness(0, 0, 0, 0);

wp.Background = new SolidColorBrush(Colors.White);

//Добавитьпрямоугольники

Rectangle r;

for (int i = 0; i <= 10; i++)

{

   r = new Rectangle();

   r.Fill = new SolidColorBrush(Colors.Blue);

   r.Margin = new Thickness(10, 10, 10, 10);

   r.Width = 60;

   r.Height = 60;

   wp.Children.Add(r);

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]