Práticas de acessibilidade a evitar

Se você quiser criar um aplicativo acessível do Windows, consulte esta lista de práticas a serem evitadas:

  • Evite criar elementos de interface do usuário personalizados se você puder usar os controles padrão do Windows ou controles que já implementaram o suporte a Automação da Interface do Usuário da Microsoft. Os controles padrão do Windows são acessíveis por padrão e geralmente exigem a adição de apenas alguns atributos de acessibilidade específicos do aplicativo. Por outro lado, a implementação do suporte AutomationPeer para um controle personalizado verdadeiro é um pouco mais complicada (consulte Pares de automação personalizados).

  • Não coloque texto estático ou outros elementos não interativos na ordem de tabulação (por exemplo, definindo a propriedade TabIndex para um elemento que não é interativo). Se elementos não interativos estiverem na ordem de tabulação, isso é contra as diretrizes de acessibilidade do teclado, pois diminui a eficiência da navegação do teclado para os usuários. Muitas tecnologias adaptativas usam a ordem de tabulação e a capacidade de focar um elemento como parte de sua lógica de como apresentar a interface de um aplicativo ao usuário de tecnologia assistencial. Elementos somente texto na ordem de tabulação podem confundir os usuários que esperam apenas elementos interativos na ordem de tabulação (botões, caixas de seleção, campos de entrada de texto, caixas de combinação, listas e assim por diante).

  • Evite usar o posicionamento absoluto de elementos de interface do usuário (como em um elemento Canvas ) porque a ordem de apresentação geralmente difere da ordem de declaração do elemento filho (que é a ordem lógica de fato). Sempre que possível, organize os elementos da interface do usuário em ordem lógica ou de documento para garantir que os leitores de tela possam ler esses elementos na ordem correta. Se a ordem visível dos elementos da interface do usuário puder divergir do documento ou da ordem lógica, use valores de índice de tabulação explícitos (defina TabIndex) para definir a ordem de leitura correta.

  • Não use a cor como a única maneira de transmitir informações. Os usuários daltônicos não podem receber informações transmitidas apenas por meio de cores, como em um indicador de status de cores. Inclua outras dicas visuais, de preferência texto, para garantir que as informações sejam acessíveis.

  • Não atualize automaticamente uma tela inteira do aplicativo, a menos que seja realmente necessário para a funcionalidade do aplicativo. Se você precisar atualizar automaticamente o conteúdo da página, atualize apenas determinadas áreas da página. As tecnologias adaptativas geralmente devem assumir que uma tela de aplicativo atualizada é uma estrutura totalmente nova, mesmo que as alterações efetivas tenham sido mínimas. O custo disso para o usuário de tecnologia assistencial é que qualquer exibição de documento ou descrição do aplicativo atualizado agora deve ser recriada e apresentada ao usuário novamente.

    Uma navegação de página deliberada iniciada pelo usuário é um caso legítimo para atualizar a estrutura do aplicativo. Mas certifique-se de que o item da interface do usuário que inicia a navegação esteja identificado ou nomeado corretamente para dar alguma indicação de que invocá-lo resultará em uma alteração de contexto e recarregamento de página.

    Observação

    Se você atualizar o conteúdo em uma região, considere definir a propriedade de acessibilidade AccessibilityProperties.LiveSetting nesse elemento como uma das configurações não padrão Polite ou Assertive. Algumas tecnologias adaptativas podem mapear essa configuração para o conceito ARIA (Accessible Rich Internet Applications) de regiões dinâmicas e, portanto, informar ao usuário que uma região de conteúdo foi alterada.

  • Não use elementos de interface do usuário que piscam mais de três vezes por segundo. Elementos intermitentes podem fazer com que algumas pessoas tenham convulsões. É melhor evitar o uso de elementos de interface do usuário que piscam.

  • Não altere o contexto do usuário nem ative a funcionalidade automaticamente. As alterações de contexto ou ativação devem ocorrer somente quando o usuário executa uma ação direta em um elemento da interface do usuário que tem foco. As alterações no contexto do usuário incluem alterar o foco, exibir novo conteúdo e navegar para uma página diferente. Fazer alterações de contexto sem envolver o usuário pode ser desorientador para usuários com deficiências. As exceções a esse requisito incluem a exibição de submenus, a validação de formulários, a exibição de texto de ajuda em outro controle e a alteração do contexto em resposta a um evento assíncrono.