Table of Contents

Кнопки

Кнопка Play, включённая кнопка-переключатель Music и отмеченный флажок Subtitles

Button выполняет действие, когда игрок щёлкает или касается её либо активирует её с клавиатуры или геймпада. ToggleButton и CheckBox к тому же хранят состояние «вкл./выкл.»: кнопка-переключатель подходит для режима, который игрок переключает (музыка вкл. или выкл.), а флажок — для пункта в списке настроек.

Разметка

<!-- Button runs a command; ToggleButton and CheckBox keep an on/off state in IsChecked. -->
<StackPanel Orientation="Vertical">
  <Button Margin="0,0,0,8" Command="{Binding PlayCommand}">Play</Button>
  <ToggleButton Margin="0,0,0,8" IsChecked="True">Music</ToggleButton>
  <CheckBox IsChecked="True">Subtitles</CheckBox>
</StackPanel>

Текст внутри кнопки становится её содержимым: строка показывается в TextBlock. Содержимым может быть и любой элемент, например значок с подписью в StackPanel.

Основные свойства

Свойство Описание
Command Команда, которую выполняет кнопка. Привяжите её к команде модели представления.
Content Что показывает кнопка: текст или любой элемент.
IsChecked Включена ли кнопка-переключатель или флажок.
CheckBrush Цвет галочки флажка.

События и команды

При активации кнопка вызывает событие Click и выполняет свою Command. Кнопка-переключатель и флажок переключают IsChecked и вызывают IsCheckedChanged.

Стиль

В теме по умолчанию кнопки тёмно-серые со светлым текстом; они принимают размер содержимого и располагаются по центру отведённого им места. Задайте кнопке HorizontalAlignment="Stretch" (или VerticalAlignment), чтобы она заполнила своё место, например в колонке меню.

Стили темы используют такие группы визуальных состояний. Ваша группа с тем же именем заменяет группу темы (см. Шаблоны и визуальные состояния):

Элемент CommonStates FocusStates CheckStates
Button Hovered, Pressed Focused
ToggleButton Hovered, Pressed Focused Checked
CheckBox Hovered Focused Checked

См. раздел Ресурсы и стили справочника по разметке.

Клавиатура, геймпад и сенсорный ввод

Кнопка в фокусе выполняет свою команду по Enter или кнопке A геймпада; кнопка-переключатель или флажок переключают состояние. Стрелки и крестовина геймпада перемещают фокус между элементами. Касание выполняет команду, как щелчок.

ToggleButton

Выглядит как кнопка и остаётся подсвеченной, пока включена (состояние Checked).

CheckBox

Квадрат с галочкой рядом с содержимым. Используйте его в списках настроек, а кнопку-переключатель — для режима на панели инструментов или в HUD.

См. также

  • Текст — о тексте внутри кнопок.
  • Панели — как выстроить кнопки в меню.