Expander и SplitPane

Expander показывает или скрывает своё содержимое под заголовком — для необязательных подробностей вроде расширенных настроек. SplitPane делит своё место между двумя панелями с разделителем, который игрок перетаскивает, как в раскладке редактора.
Разметка
<!-- Expander shows or hides its content under a header; SplitPane divides space between two panes. -->
<StackPanel Orientation="Vertical" Width="300">
<Expander Header="Advanced" IsExpanded="True" Margin="0,0,0,12">
<TextBlock>Shadow quality: high</TextBlock>
</Expander>
<SplitPane Orientation="Horizontal" SplitterPosition="0.4" Height="80">
<SplitPane.First>
<TextBlock Margin="8">Scene</TextBlock>
</SplitPane.First>
<SplitPane.Second>
<TextBlock Margin="8">Properties</TextBlock>
</SplitPane.Second>
</SplitPane>
</StackPanel>
Содержимое Expander — его дочерний элемент. Две панели SplitPane — это элементы свойств SplitPane.First и
SplitPane.Second.
Основные свойства
| Свойство | Описание |
|---|---|
| Header | Заголовок: текст или любой элемент. |
| IsExpanded | Показано ли содержимое. |
| First / Second | Две панели. |
| Orientation | Horizontal ставит панели рядом, Vertical — одну над другой. |
| SplitterPosition | Положение разделителя, от 0 до 1. |
| MinFirstSize / MinSecondSize | Насколько маленькой может стать каждая панель. |
События и команды
IsExpandedChanged и SplitterPositionChanged.
Стиль
В шаблоне Expander есть часть заголовка PART_Header (ExpanderHeader) с визуальными состояниями Hovered,
Pressed, Focused и Checked (шеврон поворачивается). Expander анимирует переход между состояниями Expanded и
Collapsed за 0,2 секунды. Разделитель SplitPane — часть PART_Divider с состояниями Hovered и Pressed.
Клавиатура, геймпад и сенсорный ввод
Заголовок Expander — это кнопка-переключатель: Enter или кнопка A геймпада раскрывают или сворачивают его, как и
щелчок или касание. Разделитель SplitPane следует за мышью или пальцем при перетаскивании.
Expander
В свёрнутом виде занимает только высоту заголовка.
SplitPane
Панели меняют размер вслед за разделителем; каждая не становится меньше своего минимального размера.
См. также
- Панели — для неизменной компоновки.