Поделиться через


Accessibility practices to avoid (Подходы к реализации специальных возможностей, которых следует избегать)

Если вы хотите создать доступное приложение Для Windows, ознакомьтесь с этим списком рекомендаций, чтобы избежать:

  • Избегайте создания пользовательских элементов пользовательского интерфейса, если можно использовать элементы управления Windows по умолчанию или элементы управления, которые уже реализовали поддержку Microsoft модель автоматизации пользовательского интерфейса. Стандартные элементы управления Windows доступны по умолчанию и обычно требуют добавления только нескольких атрибутов специальных возможностей, относящихся к приложениям. В отличие от этого, реализация поддержки AutomationPeer для истинного пользовательского элемента управления несколько больше связана (см. раздел "Пользовательские одноранговые узлы автоматизации").

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

  • Избегайте использования абсолютного расположения элементов пользовательского интерфейса (например, в элементе Canvas ), так как порядок представления часто отличается от порядка объявления дочернего элемента (который является де-факто логическим порядком). По возможности упорядочение элементов пользовательского интерфейса в документе или логическом порядке, чтобы средства чтения с экрана могли считывать эти элементы в правильном порядке. Если видимый порядок элементов пользовательского интерфейса может отличаться от документа или логического порядка, используйте явные значения индекса табуляции (set TabIndex), чтобы определить правильный порядок чтения.

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

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

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

    Примечание.

    Если вы обновляете содержимое в регионе, рекомендуется задать свойство специальных возможностей AccessibilityProperties.LiveSetting для этого элемента в одном из параметров, отличных от по умолчанию, Polite или Assertive. Некоторые вспомогательные технологии могут сопоставить этот параметр с понятием "Доступные расширенные интернет-приложения" (ARIA) динамических регионов и таким образом сообщить пользователю, что регион содержимого изменился.

  • Не используйте элементы пользовательского интерфейса, которые мигают более трех раз в секунду. Мигающие элементы могут вызвать у некоторых людей приступы. Рекомендуется избегать использования элементов пользовательского интерфейса, которые мигают.

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