Основные сведения о командах

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

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

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

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

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

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

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

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

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

Кнопки

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

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

Списки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Примечание

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

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

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

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

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

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

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

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

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

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

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

Совет

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

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

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

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

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

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

  • удаление файла;
  • удаление электронного письма (не окончательное);
  • изменение содержимого или редактирование текста;
  • Переименование файла

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

Подробнее об оптимизации взаимодействия с пользователем на основе определенного типа ввода или устройства см. в разделе Азбука взаимодействия.