Основы команд

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

Обеспечение лучшего командного взаимодействия

Самым важным аспектом командного интерфейса являются действия, которые можно выполнять пользователю. Планируя функциональность приложения, учитывайте действия, необходимые для выполнения этих задач, и взаимодействие с пользователем, которое вы хотите включить. Завершив первоначальный черновик этого взаимодействия, вы можете принять решение об инструментах и взаимодействиях для их реализации.

Вот некоторые общие варианты командного взаимодействия:

  • Отправка или отправка сведений
  • выбор параметров и пунктов;
  • поиск и фильтрация содержимого;
  • открытие, сохранение и удаление файлов;
  • изменение или создание содержимого.

Проявите изобретательность при разработке командного взаимодействия. Выберите устройства ввода, которые поддерживает ваше приложение, и реакцию приложения на каждое устройство. Реализовав поддержку максимально широкого диапазона возможностей и параметров, вы делаете свое приложение максимально удобным, мобильным и доступным (дополнительные сведения см. в статье Использование команд в приложениях Windows с помощью классов StandardUICommand, XamlUICommand и ICommand).

Выбор правильных командных элементов

Использование подходящих элементов в командном интерфейсе позволяет сделать приложение интуитивно понятным. В противном случае оно будет сложным или запутанным. В приложении Windows доступен полный набор командных элементов. Ниже приведен список некоторых самых распространенных командных элементов UWP.

Изображение кнопки

Кнопки

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

Изображение списка

Списки

Список элементов, присутствующих в интерактивном списке или сетке. Обычно они используются для отображения большого числа параметров или элементов, включая раскрывающийся список, поле со списком, представление списка и представление сетки.

Изображение элемента управления выделением

Элементы управления выделением

Представляют разные варианты на выбор, например при прохождении опроса или настройке параметров приложения, Примеры: CheckBox, RadioButton и переключатель переключателя.

Изображение календаря

Календарь, а также средства выбора даты и времени

Календарь и средства выбора даты и времени представляют возможности для просмотра и изменения сведений о дате и времени (например, при создании события или установке будильника), включая средство выбора даты календаря, представление календаря, средства выбора даты и времени.

Изображение средства прогнозируемого ввода текста

Средство прогнозируемого ввода текста

Отображает предложения по мере ввода пользователем данных или при выполнении запросов, Примеры: AutoSuggestBox.

Полный список см. в разделе "Элементы управления" и "Элементы пользовательского интерфейса"

Размещение команд на правой поверхности

Командные элементы можно размещать на ряде поверхностей приложения, в том числе на холсте приложения или в специальных командных контейнерах, таких как панели команд, всплывающее меню панели команд, строка меню и диалоговое окно.

Всегда старайтесь позволить пользователям управлять содержимым напрямую, а не с помощью команд, воздействующих на содержимое. Например, разрешите пользователям изменять расположение списков путем перетаскивания и удаления элементов списка, а не с помощью кнопок "вверх" и "вниз".

Однако это может оказаться невозможным при использовании определенных устройств ввода или при учете определенных пользовательских возможностей и настроек. В этих случаях предоставьте как можно больше возможностей для командных элементов и поместите эти элементы на командную поверхность в своем приложении.

Ниже приведен список некоторых самых распространенных поверхностей для команд.

Изображение холста приложения

Холст приложения (область содержимого)

Если команда постоянно требуется пользователю для выполнения основных сценариев, ее можно поместить на холст. Так как вы можете поместить команды рядом (или на) объекты, которые они влияют, помещая команды на холст, делает их простыми и очевидными для использования. Однако тщательно выберите команды, которые вы помещаете на холст. Большое количество команд занимает слишком много места на экране и может затруднять восприятие интерфейса пользователем. Если команда будет использоваться нечасто, ее можно поместить на другую поверхность для команд.

Изображение панели команд

Панели команд и строки меню

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

Изображение контекстного меню

Меню и контекстные меню

Меню и контекстные меню экономят место, упорядочивая команды и скрывая их до тех пор, пока пользователь не нуждается в них. Пользователи обычно обращаются к меню или контекстному меню, нажимая кнопку или щелкая элемент управления правой кнопкой мыши.

CommandBarFlyout — это тип контекстного меню, объединяющее преимущества панели команд и контекстного меню в один элемент управления. Оно может содержать ярлыки на часто используемые действия и предоставлять доступ ко второстепенным командам, которые актуальны только в определенном контексте, например командам буфера обмена или пользовательским командам.

UWP также предоставляет набор традиционных меню и контекстных меню; Дополнительные сведения см. в меню и контекстных меню.

Предоставление отзывов для команды

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

Примечание.

Предоставляйте отзывы только в случае необходимости и только если они больше нигде не доступны. Не засоряйте пользовательский интерфейс приложения, если только вы не добавляете значимые элементы.

Ниже перечислены некоторые способы предоставления отзывов в приложении.

Изображение области содержимого панели команд

Панель команд

Область содержимого панели commandBar — это интуитивно понятное место для обмена данными с пользователями, если они хотели бы просмотреть отзывы.

Изображение всплывающего элемента

Всплывающие элементы

Всплывающие элементы — это облегченные всплывающие контекстно-зависимые окна, которые можно закрыть, если щелкнуть участок экрана за его пределами.

Изображение диалогового окна

Диалоговое окно

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

Совет

Будьте осторожны с тем, сколько приложение использует диалоги подтверждения; они могут быть очень полезными, когда пользователь делает ошибку, но они являются помехой всякий раз, когда пользователь пытается выполнить действие намеренно.

Когда необходимо подтвердить или отменить действия

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

Для действий, которые не могут быть отменены и имеют серьезные последствия, рекомендуется использовать диалоговое окно подтверждения. Примеры таких действий:

  • Перезапись файла
  • Не сохранять файл перед закрытием
  • Подтверждение постоянного удаления файла или данных
  • Приобретение (если пользователь не откажется от требования подтверждения)
  • Отправка формы, например регистрация для чего-то

Для действий, которые могут быть отменены, предложение простой команды отмены обычно достаточно. Примеры таких действий:

  • Удаление файла
  • Удаление сообщения электронной почты (не окончательно)
  • Изменение содержимого или редактирования текста
  • Переименование файла

Оптимизация для определенных типов входных данных

Дополнительные сведения о оптимизации пользовательского интерфейса для определенного типа ввода или устройства см. в праймере взаимодействия.