Table of Contents

Редакторы цвета и свойств

Палитра цветов на вкладке Swatches рядом с таблицей свойств, где редактируются VSync, FrameRateLimit и Quality

ColorPicker позволяет игроку выбрать цвет: из образцов, на поле тона и насыщенности или ползунками и шестнадцатеричным кодом. ColorPickerButton — компактная кнопка, показывающая цвет и открывающая палитру во всплывающем окне. PropertyGrid редактирует открытые свойства любого объекта — это подходит для отладочных панелей и редакторов уровней.

Разметка

<!-- ColorPicker edits a color; PropertyGrid edits an object's public properties. -->
<StackPanel Orientation="Horizontal">
  <ColorPicker SelectedColor="#FF3C78D8" Width="300" Height="240" Margin="0,0,16,0" />
  <PropertyGrid Target="{Binding Settings}" Width="280" />
</StackPanel>

Target таблицы свойств — объект со свойствами VSync (bool), FrameRateLimit (int) и Quality (перечисление).

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

Свойство Описание
SelectedColor Выбранный цвет.
SwatchColors Образцы на вкладке Swatches. Изначально это восемь распространённых цветов; после изменения вызовите RefreshSwatches().
SelectedColor Цвет кнопки, общий с её всплывающей палитрой.
Target Объект, свойства которого редактирует таблица.

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

ColorChanged срабатывает при смене цвета. Таблица свойств записывает каждое изменение прямо в свойство объекта.

Стиль

Стили темы задают фон и рамку всем трём элементам; их части создаются в коде и не имеют именованных частей шаблона.

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

Вкладки, образцы и ползунки палитры реагируют на щелчки и касания. Редакторы в таблице свойств — обычные текстовые поля, флажки, поля со списком и ползунки, поэтому работают так, как описано на страницах этих элементов.

ColorPicker

Задавайте ему размер явно (например, 300 × 240): вкладкам нужно место.

ColorPickerButton

Показывает образец своего цвета; щелчок открывает палитру под кнопкой или над ней, если снизу нет места.

PropertyGrid

Выбирает редактор по типу каждого свойства:

  • string: текстовое поле;
  • bool: флажок;
  • числа: текстовое поле или, если у свойства есть атрибут [Range], ползунок с текстовым полем;
  • перечисления: поле со списком значений перечисления;
  • Color: кнопка палитры цветов.

Свойства группируются по своему [Category], а без него — в группу «Misc». Свойства только для чтения показывают значение, но не редактируются.

См. также