Compartilhar via


Tipo de controle ListItem

Este tópico fornece informações sobre o suporte à Automação de Interface do Usuário da Microsoft 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 a estrutura de árvore, as propriedades, os padrões de controle e os 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 o suporte à Automação de Interface do Usuário para tipos de controle e padrões de controle.

Este tópico contém 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 de Automação da Interface do Usuário que pertence aos 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.

Modo de 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 de Automação da Interface do Usuário devem sempre mostrar zero filhos. Se a estrutura do controle for tal que outros itens estejam 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 da 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 as propriedades da Automação da Interface do Usuário, consulte Recuperando propriedades de elementos de automação da interface do usuário.

Propriedade de Automação da Interface do Usuário Valor Anotações
UIA_AutomationIdPropertyId Confira as anotações. O valor dessa propriedade deve ser exclusivo entre todos os elementos pares na exibição bruta da árvore de 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 Confira as anotações. Esse valor dessa propriedade deve incluir a área da imagem e o conteúdo de 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 de interface do usuário.
UIA_HelpTextPropertyId Confira as anotações. O texto da Ajuda para controles de lista deve explicar por que o usuário está sendo solicitado a fazer uma escolha em 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 do monitor".
UIA_IsContentElementPropertyId verdadeiro O controle de lista sempre está incluído na exibição de conteúdo da árvore de Automação da Interface do Usuário.
UIA_IsControlElementPropertyId verdadeiro O controle de lista sempre está incluído na exibição de controle da árvore de Automação da Interface do Usuário.
UIA_IsKeyboardFocusablePropertyId Confira as anotações. Se o contêiner puder aceitar a entrada do teclado, esse valor de propriedade deverá ser VERDADEIRO.
UIA_IsOffscreenPropertyId Depende Essa propriedade deve retornar um valor para saber se o item de lista está atualmente rolado para exibição dentro do contêiner pai que implementa padrão de controle scroll.
UIA_ItemStatusPropertyId Depende Se o controle contiver o 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 Confira as anotações. Se houver um rótulo de texto estático, essa propriedade deverá expor uma referência a esse controle.
UIA_LocalizedControlTypePropertyId Confira as anotaçõ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 Confira as anotações. O valor da propriedade de nome 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 de automação da interface do usuário.

Padrão de controle Apoio Anotaçõ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 da 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 possa 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 Windows Media Player.
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 de alternância deverá ser implementado.
IValueProvider Depende Se o item puder ser editado, o padrão de controle Value 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 necessários

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

Evento de automação da interface do usuário Anotações
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId evento alterado por propriedade.
UIA_ExpandCollapseExpandCollapseStatePropertyId evento alterado por 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 alterado por propriedade. Se o controle der suporte à propriedade IsEnabled, ele deverá dar suporte a esse evento.
UIA_IsOffscreenPropertyId evento alterado por propriedade. Se o controle der suporte à propriedade IsOffscreen, ele deverá dar suporte a esse evento.
UIA_ItemStatusPropertyId evento alterado por propriedade. Se o controle der suporte à propriedade ItemStatus, será necessário dar suporte a esse evento.
UIA_NamePropertyId evento alterado por 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 alterado por propriedade. Se o controle der suporte ao padrão de controle de Desativar, ele deverá dar suporte a esse evento.
UIA_ValueValuePropertyId evento alterado por propriedade. Se o controle der suporte ao padrão de controle Value, ele deverá dar suporte a esse evento.

 

Observações

Se um contêiner hospeda itens de lista, os principais meios de navegação devem ir para os itens de lista. Colocar o foco em subelementos por meio da navegação de lista pode ser confuso para os 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 da interface do usuário

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