Tipo de controle ListItem

Este tópico fornece informações sobre o suporte do Microsoft Automação da Interface do Usuário para o tipo de controle ListItem.

Os controles de item de lista são um exemplo de controles que implementam o tipo de controle ListItem .

As seções a seguir definem o Automação da Interface do Usuário estrutura de árvore, propriedades, padrões de controle e eventos necessários para o tipo de controle ListItem. Os requisitos de Automação da Interface do Usuário se aplicam a todos os controles de item de lista em que a estrutura/plataforma da interface do usuário integra Automação da Interface do Usuário suporte para tipos de controle e padrões de controle.

Este tópico inclui as seções a seguir.

Estrutura de árvore típica

A tabela a seguir ilustra um controle típico e uma exibição de conteúdo da árvore Automação da Interface do Usuário que pertence a controles de item de lista e descreve o que pode ser contido em cada exibição. Para obter mais informações sobre a árvore de Automação da Interface do Usuário, consulte Visão geral da árvore de Automação da Interface do Usuário.

Exibição de controle Exibição de conteúdo
  • ListItem
    • Imagem (0 ou mais)
    • Texto (0 ou mais)
    • Editar (0 ou mais)
  • ListItem

 

Os filhos de um controle de item de lista na exibição de conteúdo da árvore Automação da Interface do Usuário sempre devem mostrar zero filhos. Se a estrutura do controle for tal que outros itens estão contidos abaixo do item de lista, ele deverá seguir os requisitos para o suporte Automação da Interface do Usuário para o tipo de controle TreeItem.

Propriedades relevantes

A tabela a seguir lista as propriedades Automação da Interface do Usuário cujo valor ou definição é especialmente relevante para o tipo de controle ListItem. Para obter mais informações sobre Automação da Interface do Usuário propriedades, consulte Recuperando propriedades de elementos Automação da Interface do Usuário.

Propriedade de Automação da Interface do Usuário Valor Observações
UIA_AutomationIdPropertyId Veja as observações. O valor dessa propriedade deve ser exclusivo entre todos os elementos pares na exibição bruta da árvore Automação da Interface do Usuário. Aloque a propriedade AutomationId para um item de lista se o elemento for conhecido por ser consistente em diferentes instâncias da interface do usuário. Se o item de lista for preenchido dinamicamente e não for previsível, deixe a propriedade AutomationId em branco.
UIA_BoundingRectanglePropertyId Veja as observações. Esse valor dessa propriedade deve incluir a área do conteúdo de imagem e texto do item de lista.
UIA_ClickablePointPropertyId Depende Se o controle de lista tiver um ponto clicável (um ponto que pode ser clicado para fazer com que a lista se concentre), esse ponto deverá ser exposto por meio dessa propriedade. Se o controle de lista for completamente coberto por itens de lista descendentes, ele retornará o erro UIA_E_NOCLICKABLEPOINT para indicar que o cliente deve solicitar um item dentro do controle de lista para um ponto clicável.
UIA_ControlTypePropertyId ListItem Esse valor é o mesmo para todas as estruturas da IU.
UIA_HelpTextPropertyId Veja as observações. O texto da Ajuda para controles de lista deve explicar por que o usuário está sendo solicitado a fazer uma escolha a partir de uma lista de opções, que normalmente é o mesmo tipo de informação apresentada por meio de uma dica de ferramenta. Por exemplo, "Selecione um item para definir a resolução de exibição para o monitor".
UIA_IsContentElementPropertyId TRUE O controle de lista sempre está incluído na exibição de conteúdo da árvore da Automação da Interface do Usuário.
UIA_IsControlElementPropertyId TRUE O controle de lista sempre está incluído na exibição de controle da árvore da Automação da Interface do Usuário.
UIA_IsKeyboardFocusablePropertyId Veja as observações. Se o contêiner puder aceitar a entrada do teclado, esse valor de propriedade deverá ser TRUE.
UIA_IsOffscreenPropertyId Depende Essa propriedade deve retornar um valor para saber se o item de lista atualmente é rolado para exibição dentro do contêiner pai que implementa o padrão de controle Scroll .
UIA_ItemStatusPropertyId Depende Se o controle contiver status que está sendo atualizado dinamicamente, essa propriedade deverá ter suporte para que uma tecnologia adaptativa possa receber atualizações quando o status do elemento for alterado.
UIA_ItemTypePropertyId Depende Essa propriedade deve ser exposta para controles de item de lista que representam um objeto subjacente. Esses controles de item de lista normalmente têm um ícone associado ao controle que os usuários associam ao objeto subjacente.
UIA_LabeledByPropertyId Veja as observações. Se houver um rótulo de texto estático, essa propriedade precisará expor uma referência a esse controle.
UIA_LocalizedControlTypePropertyId Veja as observações. Cadeia de caracteres localizada correspondente ao tipo de controle ListItem . O valor padrão é "item de lista" para en-US ou inglês (Estados Unidos).
UIA_NamePropertyId Veja as observações. O valor da propriedade name de um controle de item de lista vem do rótulo de texto do item.

 

Padrões de controle necessários

A tabela a seguir lista os padrões de controle de Automação da Interface do Usuário necessários para serem suportados por todos os controles de item de lista. Para obter mais informações sobre padrões de controle, consulte Visão geral dos padrões de controle da Automação da Interface do Usuário.

Padrão de controle Suporte Observações
IExpandCollapseProvider Depende Se o item puder ser manipulado para mostrar ou ocultar informações, o padrão de controle ExpandCollapse deverá ser implementado.
IGridItemProvider Depende Se houver suporte para navegação espacial item a item no contêiner de lista e o contêiner for organizado em linhas e colunas, o padrão de controle GridItem deverá ser implementado.
IInvokeProvider Depende Se o item tiver um comando que pode ser executado nele, separado da seleção, o padrão de controle Invoke deverá ser implementado. Normalmente, essa é uma ação associada ao clique duplo no controle de item de lista. Exemplos seriam iniciar um documento do Windows Explorer ou reproduzir um arquivo de música no Microsoft Reprodutor Multimídia do Windows.
IScrollItemProvider Depende Se o item de lista estiver contido em um contêiner que seja rolável, o padrão de controle ScrollItem deverá ser implementado.
ISelectionItemProvider Depende Um controle de item de lista que dá suporte à seleção deve implementar o padrão de controle SelectionItem . Isso permite que os controles de itens de lista transmitam quando são selecionados.
IToggleProvider Depende Se o item de lista for verificável e a ação não executar uma alteração de estado de seleção, o padrão de controle Alternância deverá ser implementado.
IValueProvider Depende Se o item puder ser editado, o padrão de controle Valor deverá ser implementado. As alterações no controle de item de lista causarão alterações nos valores das propriedades UIA_NamePropertyId e UIA_ValueValuePropertyId .

 

Eventos obrigatórios

A tabela a seguir lista os eventos Automação da Interface do Usuário que listam controles de item são necessários para dar suporte. Para mais informações sobre eventos, confira Visão geral de eventos de Automação da Interface do Usuário.

Evento de Automação da Interface do Usuário Observações
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId evento com alteração de propriedade.
UIA_ExpandCollapseExpandCollapseStatePropertyId evento com alteração de propriedade. Se o controle der suporte ao padrão de controle ExpandCollapse , ele deverá dar suporte a esse evento.
UIA_Invoke_InvokedEventId Se o controle der suporte ao padrão de controle Invoke , ele deverá dar suporte a esse evento.
UIA_IsEnabledPropertyId evento com alteração de propriedade. Se o controle der suporte à propriedade IsEnabled , ele deverá dar suporte a esse evento.
UIA_IsOffscreenPropertyId evento com alteração de propriedade. Se o controle der suporte à propriedade IsOffscreen , ele deverá dar suporte a esse evento.
UIA_ItemStatusPropertyId evento com alteração de propriedade. Se o controle der suporte à propriedade ItemStatus , deverá dar suporte a esse evento.
UIA_NamePropertyId evento com alteração de propriedade.
UIA_SelectionItem_ElementAddedToSelectionEventId Se o controle der suporte ao padrão de controle SelectionItem , ele deverá dar suporte a esse evento.
UIA_SelectionItem_ElementRemovedFromSelectionEventId Se o controle der suporte ao padrão de controle SelectionItem , ele deverá dar suporte a esse evento.
UIA_SelectionItem_ElementSelectedEventId Se o controle der suporte ao padrão de controle SelectionItem , ele deverá dar suporte a esse evento.
UIA_StructureChangedEventId
UIA_ToggleToggleStatePropertyId evento com alteração de propriedade. Se o controle der suporte ao padrão de controle Desativar , ele deverá dar suporte a esse evento.
UIA_ValueValuePropertyId evento com alteração de propriedade. Se o controle der suporte ao padrão de controle Value , ele deverá dar suporte a esse evento.

 

Comentários

Se um contêiner hospedar itens de lista, os principais meios de navegação deverão ir para os itens da lista. Colocar o foco em subelementos por meio da navegação de lista pode ser confuso para usuários e ferramentas de acessibilidade. Se o contêiner hospedar uma lista vertical de itens, pressionar as teclas seta para cima e seta para baixo deverá navegar pelos itens, mas pressionar as teclas SETA PARA A DIREITA e SETA PARA A ESQUERDA poderá navegar até subelementos do item focado, como colunas de lista ou subelementos de interface do usuário.

Conceitual

Visão Geral dos Tipos de Controle de Automação de Interface do Usuário

Visão geral de automação da interface do usuário