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

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 informações sobre o suporte à Automação da Interface do Usuário para o tipo de controle ScrollBar. 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 Interface do Usuário, os valores de propriedade de Automação da Interface do Usuário e os padrões de controle.

Os controles de barra de rolagem permitem que um usuário role o conteúdo dentro de uma janela ou contêiner de item. O controle é composto por um conjunto de botões e um controle de posição.

As seções a seguir definem a estrutura de árvore, as propriedades, os padrões de controle e os eventos necessários da Automação da Interface do Usuário para o tipo de controle ScrollBar. Os requisitos da 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 da árvore de Automação da Interface do Usuário necessária

A tabela a seguir descreve o modo de exibição de controle e o modo de exibição de conteúdo da árvore de Automação da Interface do Usuário que pertence aos controles de barra de rolagem e descreve o que pode conter 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
ScrollBar

- Botão (2 ou 4)
- Posição (0 ou 1)
Não aplicável. O controle da barra de rolagem não contém conteúdo.

O controle de barra de rolagem sempre tem de três a cinco filhos. Como a subárvore tem mais de um controle de botão, você deve definir um valor AutomationIdProperty específico para cada item para torná-los detectáveis para ferramentas de automação de teste.

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 barra de rolagem. Observe que um controle de barra de rolagem nunca tem conteúdo; sua funcionalidade é exposta por meio do padrão Controle de rolagem, que tem suporte no contêiner que está sendo rolado.

Para obter mais informações sobre as propriedades de Automação da Interface do Usuário, consulte 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.
IsKeyboardFocusableProperty Veja as observações. Se o controle puder receber o foco do teclado, ele deverá dar suporte a essa propriedade.
NameProperty Null O controle de barra de rolagem não tem elementos de conteúdo e não é obrigatório definir NameProperty.
ClickablePointProperty Não é um número. O controle de barra de rolagem não tem pontos clicáveis.
LabeledByProperty Null As barras de rolagem não têm rótulos.
ControlTypeProperty ScrollBar Esse valor é o mesmo para todas as estruturas. As barras de rolagem que funcionam como controles deslizantes devem usar o tipo de controle Controle Deslizante.
LocalizedControlTypeProperty "barra de rolagem" A cadeia de caracteres localizada que corresponde ao tipo de controle Botão.
IsContentElementProperty Falso O controle de barra de rolagem nunca é um elemento de conteúdo. Se a barra de rolagem for um controle autônomo, ela deverá atender ao tipo de controle Controle Deslizante e retornar ControlType.Slider para a propriedade ControlType.
IsControlElementProperty True A barra de rolagem sempre deverá ser um controle.
OrientationProperty True O controle de barra de rolagem deve sempre expor sua orientação horizontal ou vertical.

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 terem suporte dos controles de barra de rolagem. 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. Observe que, quando uma barra de rolagem é usada como um controle somente para manipulação de mouse, ela não dá suporte a padrões de controle. Se ele for usado como um controle deslizante dentro de um aplicativo, ele deverá receber o tipo de controle Controle Deslizante.

Padrão de controle Suporte Observações
IScrollProvider Nunca O padrão de controle Rolar nunca tem suporte direto na barra de rolagem.
IRangeValueProvider Depende Essa funcionalidade só terá suporte se o padrão de controle Rolar não tiver suporte no contêiner que tem a barra de rolagem.

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 devem ter suporte de todos os controles de barra de rolagem. 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 Suporte/Valor Observações
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. Nunca Nenhum
Evento de alteração da propriedade HorizontalScrollPercentProperty. Nunca Nenhum
Evento de alteração da propriedade HorizontalViewSizeProperty. Nunca Nenhum
Evento de alteração da propriedade VerticalScrollPercentProperty. Nunca Nenhum
Evento de alteração da propriedade VerticallyScrollableProperty. Nunca Nenhum
Evento de alteração da propriedade VerticalViewSizeProperty. Nunca Nenhum
Evento de alteração da propriedade ValueProperty. Depende Nenhum
AutomationFocusChangedEvent Obrigatório Nenhum
StructureChangedEvent Obrigatório Nenhum

Confira também