Compartilhar via


Suporte de automação de interface de usuário para o tipo de controle ListItem

Observação

Esta documentação destina-se a desenvolvedores de .NET Framework que querem usar as classes da Automação da Interface do Usuário gerenciadas definidas no namespace System.Windows.Automation. Para obter as informações mais recentes sobre a Automação da Interface do Usuário, confira API de Automação do Windows: Automação da Interface do Usuário.

Este tópico fornece as informações sobre o suporte de Automação da Interface do Usuário para o tipo de controle ListItem. Na Automação da Interface do Usuário, um tipo de controle é um conjunto de condições a que um controle precisa atender para usar a propriedade ControlTypeProperty. As condições incluem as diretrizes específicas para estrutura de árvore de automação da IU, os valores de propriedade de Automação da Interface do Usuário e os padrões de controle.

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 cabeçalho do WPF (Windows Presentation Foundation), Win32 ou Windows Forms.

Estrutura de árvore de Automação da IU necessária

A tabela a seguir ilustra o modo de exibição de controle e a exibição de conteúdo da árvore Automação da Interface do Usuário que se refere 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 IU, confira Visão geral da árvore de Automação da IU.

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 devem ser sempre "0". 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 Tipo de Controle TreeItem.

Propriedades de Automação da Interface do Usuário necessárias

A tabela a seguir lista as propriedades Automação da Interface do Usuário cujo valor ou definição é especialmente relevante para listar controles de item. Para obter mais informações sobre as propriedades da Automação da Interface do Usuário, confira Propriedades da Automação da Interface do Usuário para clientes.

Propriedade de Automação da Interface do Usuário Valor Observações
AutomationIdProperty Veja as observações. O valor dessa propriedade precisa ser exclusivo em todos os controles de um aplicativo.
BoundingRectangleProperty Veja as observações. Esse valor dessa propriedade deve incluir a área do conteúdo de imagem e texto do item de lista.
ClickablePointProperty Depende Se o controle de lista tiver um ponto clicável (um ponto que possa ser clicado para fazer com que a lista receba o foco), esse ponto deverá ser exposto por meio dessa propriedade. Se o controle de lista for completamente coberto por itens de lista descendentes, ele gerará um NoClickablePointException para indicar que o cliente deve solicitar um item dentro do controle de lista para obter um ponto clicável.
NameProperty Veja as observações. O valor da propriedade de nome de um controle de item de lista vem do conteúdo de texto do item.
LabeledByProperty Veja as observações. Se houver um rótulo de texto estático, essa propriedade precisará expor uma referência a esse controle.
ControlTypeProperty ListItem Esse valor é o mesmo para todas as estruturas da IU.
LocalizedControlTypeProperty "list item" Cadeia de caracteres localizada correspondente ao tipo de controle ListItem.
IsContentElementProperty 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.
IsControlElementProperty True O controle de lista sempre está incluído na exibição de controle da árvore da Automação da Interface do Usuário.
IsKeyboardFocusableProperty True Se o contêiner puder aceitar entrada do teclado, o valor da propriedade deverá ser True.
HelpTextProperty "" 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 do monitor".
ItemTypeProperty 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.
IsOffscreenProperty Depende Essa propriedade deve retornar um valor para saber se o item de lista está rolado no momento para exibição dentro do contêiner pai que implementa o padrão de controle Scroll.

Padrões de controle de Automação da Interface do Usuário necessários

A tabela a seguir lista os padrões de controle Automação da Interface do Usuário necessários para serem suportados por 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
ISelectionItemProvider Sim O controle de item de lista deve implementar esse padrão de controle. Isso permite que os controles de itens de lista transmitam quando são selecionados.
IScrollItemProvider Depende Se o item de lista estiver contido em um contêiner que seja rolável, esse padrão de controle deverá ser implementado.
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, esse padrão de controle deverá ser implementado.
IExpandCollapseProvider Depende Se o item puder ser manipulado para mostrar ou ocultar informações, esse padrão de controle deverá ser implementado.
IValueProvider Depende Se o item puder ser editado, esse padrão de controle deverá ser implementado. As alterações no controle de item de lista causarão alterações nos valores de NameProperty, e Value.
IGridItemProvider Depende Se houver suporte para navegação espacial de item para item dentro do contêiner de lista e o contêiner for organizado em linhas e colunas, o padrão de controle Item de Grade deverá ser implementado.
IInvokeProvider Depende Se o item tiver um comando que pode ser executado nele, separado da seleção, esse padrão deverá ser implementado. Normalmente, essa é uma ação associada ao clique duplo no controle de item de lista. Exemplos seriam iniciar um documento do Microsoft Windows Explorer ou reproduzir um arquivo de música no Player de Mídia do Azure.

Eventos de Automação da Interface do Usuário necessários

A tabela a seguir lista os eventos Automação da Interface do Usuário necessários para serem suportados por todos os controles de item de lista. 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 Suporte Observações
InvokedEvent Depende Nenhum
ElementAddedToSelectionEvent Obrigatório Nenhum
ElementRemovedFromSelectionEvent Obrigatório Nenhum
ElementSelectedEvent Obrigatório Nenhum
Evento de alteração da propriedade BoundingRectangleProperty. Obrigatório Nenhum
Evento de alteração da propriedade IsOffscreenProperty. Obrigatório Nenhum
Evento de alteração da propriedade IsEnabledProperty. Obrigatório Nenhum
NameProperty Obrigatório Nenhum
Evento de alteração da propriedade ItemStatusProperty. Depende Nenhum
Evento de alteração da propriedade ExpandCollapseStateProperty. Depende Nenhum
Evento de alteração da propriedade ValueProperty. Depende Nenhum
Evento de alteração da propriedade ToggleStateProperty. Depende Nenhum
AutomationFocusChangedEvent Obrigatório Nenhum
StructureChangedEvent Obrigatório Nenhum

Confira também