GroupBox и TabItem
50WPF --- Элементы управления WPF --- GroupBox и TabItem
Класс GroupBox
Класс GroupBox — наиболее простой из трех элементов управления, порожденных от HeaderedContentControl. Он имеет вид прямоугольника с закругленными углами и заголовком. Ниже приведен пример:
<GroupBox Header="Группа элементов" Margin="5" Padding="5">
<StackPanel>
<CheckBox>Один</CheckBox>
<CheckBox Margin="0,5,0,5">Два</CheckBox>
<CheckBox>Три</CheckBox>
<Button HorizontalAlignment="Center" Padding="5">Ok</Button>
</StackPanel>
</GroupBox>
Обратите внимание, что элементу GroupBox нужен контейнер компоновки (наподобие StackPanel) для размещения содержимого. Он часто используется для группировки небольшого количества взаимосвязанных элементов управления, таких как кнопки переключателя. Однако в классе GroupBox нет никаких встроенных функций, поэтому его можно применять где угодно и как угодно. (Объекты RadioButton группируются их размещением на какой-либо панели. При этом элемент GroupBox не обязателен, если вам не нужно их окаймление с заголовком и округлыми углами.)
Класс TabItem
Объекты TabItem представляют собой страницы в элементе TabControl. Единственным существенным членом, добавленным в класс Tabltem, является свойство IsSelected, которое указывает, видима ли данная вкладка в TabControl.
Вот разметка, необходимая для создания простого примера:
<TabControl>
<TabItem Header="Вкладка 1">
<GroupBox Header="Группа элементов" Margin="5" Padding="5">
<StackPanel>
<CheckBox>Один</CheckBox>
<CheckBox Margin="0,5,0,5">Два</CheckBox>
<CheckBox>Три</CheckBox>
<Button HorizontalAlignment="Center" Padding="5">Ok</Button>
</StackPanel>
</GroupBox>
</TabItem>
<!-- Используем нестандартное содержимое в заголовке TabItem -->
<TabItem>
<TabItem.Header>
<StackPanel>
<TextBlock>Вкладка 2</TextBlock>
<Image Source="img.png" Width="50" Margin="5"></Image>
</StackPanel>
</TabItem.Header>
</TabItem>
</TabControl>
Как и свойство Content, свойство Header может содержать объект любого типа. Объекты, порожденные от класса UIElement, выводятся с помощью графической прорисовки, а текстовые и другие объекты — с помощью метода ToStringO. Это означает, что можно создать групповую панель или вкладку, заголовок которой содержит графическое содержимое или другие произвольные элементы: