Suporte de automação de interface de usuário para o Tipo de Controle Tree

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 Tree. Na Automação da Interface do Usuário, um tipo de controle é um conjunto de condições 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 da propriedade da Automação da Interface do Usuário e os padrões de controle.

O tipo de controle Tree é usado para contêineres cujo conteúdo tem relevância como uma hierarquia de nós, como na forma como arquivos e pastas são exibidos no painel esquerdo do Microsoft Windows Explorer. Cada nó tem o potencial de conter outros nós, chamados nós filhos. Nós pais ou nós que contêm nós filhos, podem ser exibidos como expandidos ou recolhidos.

As seções a seguir definem a estrutura de árvore de Automação da IU, as propriedades, os padrões de controle e os eventos necessários para o tipo de controle Tree. Os requisitos de Automação da Interface do Usuário se aplicam a todos os controles de árvore do WPF (Windows Presentation Foundation), Win32 ou Windows Forms.

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

A tabela a seguir descreve a exibição de controle e a exibição de conteúdo da árvore de Automação da IU que pertence aos controles de árvore e descreve o que pode conter 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
Árvore

  • DataItem (0 ou mais)
  • TreeItem (0 ou mais)

    • TreeItem (0 ou mais) ...
  • ScrollBar (0, 1, 2)
Árvore

  • DataItem (0 ou mais)
  • TreeItem (0 ou mais)

    • TreeItem (0 ou mais) ...

A exibição de controle da árvore de Automação da Interface do Usuário consiste em:

  • Zero a muitos itens dentro do contêiner (os itens podem ser baseados no Item Tree, item Data ou outro tipo de controle).

  • Zero, uma ou duas barras de rolagem.

A exibição do conteúdo da árvore de Automação da Interface do Usuário consiste em zero ou muitos itens dentro do contêiner (os itens podem ser baseados no Item Tree, Item Data ou outro tipo de controle).

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

A tabela a seguir lista as propriedades da Automação da Interface do Usuário, cujo valor ou definição é especialmente relevante para controles de lista. Para obter mais informações sobre as propriedades de Automação da Interface do Usuário, confira Propriedades de 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. O retângulo mais externo que contém todo o controle.
ClickablePointProperty Veja as observações. Os controles de árvore têm um ponto clicável que fará com que a árvore ou um dos itens no contêiner de árvore tenha o foco definido neles. Você receberá um ponto clicável para uma árvore somente se puder clicar em algum lugar que não faça com que um dos itens seja selecionado/obtenha o foco.
ControlTypeProperty Árvore Esse valor é o mesmo para todas as estruturas da IU.
IsContentElementProperty True O controle de árvore 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 árvore sempre está incluído na exibição de controle da árvore da Automação da Interface do Usuário.
IsKeyboardFocusableProperty Veja as observações. Se o controle puder receber o foco do teclado, ele deverá dar suporte a essa propriedade.
LabeledByProperty Veja as observações. Se o controle de árvore tiver um rótulo associado a ele, essa propriedade retornará um AutomationElement para esse rótulo. Caso contrário, a propriedade retornará uma referência nula (Nothing no .NET do Microsoft Visual Basic).
LocalizedControlTypeProperty “árvore” Cadeia de caracteres localizada, correspondente ao tipo de controle de lista.
NameProperty Veja as observações. O valor da propriedade de nome de um controle de árvore geralmente vem do texto que rotula o controle. Se não houver nenhum rótulo de texto, o desenvolvedor do aplicativo deverá fornecer um valor para essa propriedade.

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

A tabela a seguir lista os padrões de controle da Automação da Interface do Usuário que necessitam do suporte dos controles de lista. Para obter mais informações sobre padrões de controle, confira Visão geral dos padrões de controle da Automação da Interface do Usuário.

Padrão de Controle/Propriedade do Padrão Suporte/Valor Observações
ISelectionProvider Depende Os controles de árvore que contêm um conjunto de itens selecionáveis devem implementar esse padrão de controle. Esse padrão de controle não precisa ser implementado se a seleção de um item não transmitir informações significativas ao usuário.
CanSelectMultiple Veja as observações. Implemente essa propriedade se o controle de árvore der suporte a várias seleções (a maioria dos controles de árvore não dá suporte a várias seleções).
IsSelectionRequired Veja as observações. O valor dessa propriedade será exposto se o controle exigir que um item seja selecionado.
IScrollProvider Depende Implemente esse padrão de controle se o conteúdo do contêiner de árvore puder ser rolado.

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

A tabela a seguir lista os eventos de Automação da Interface do Usuário que precisam ter suporte de todos os controles de árvore. 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
InvalidatedEvent Depende 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
Evento de alteração da propriedade HorizontallyScrollableProperty. Depende Nenhum
Evento de alteração da propriedade HorizontalScrollPercentProperty. Depende Nenhum
Evento de alteração da propriedade HorizontalViewSizeProperty. Depende Nenhum
Evento de alteração da propriedade VerticalScrollPercentProperty. Depende Nenhum
Evento de alteração da propriedade VerticallyScrollableProperty. Depende Nenhum
Evento de alteração da propriedade VerticalViewSizeProperty. Depende Nenhum
AutomationFocusChangedEvent Obrigatório Nenhum
StructureChangedEvent Obrigatório Nenhum

Confira também