Compartilhar via


AutomationPeer Classe

Definição

Fornece uma classe base que expõe o par de automação de uma classe de proprietário associada à Automação da Interface do Usuário da Microsoft.

public ref class AutomationPeer : DependencyObject
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AutomationPeer : DependencyObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class AutomationPeer : DependencyObject
Public Class AutomationPeer
Inherits DependencyObject
Herança
Object Platform::Object IInspectable DependencyObject AutomationPeer
Derivado
Atributos

Requisitos do Windows

Família de dispositivos
Windows 10 (introduzida na 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduzida na v1.0)

Comentários

AutomationPeer é a classe que fornece quase toda a API que eventualmente encaminha as informações da Automação da Interface do Usuário da Microsoft para um aplicativo UWP usando C++, C#ou Visual Basic para um cliente da Automação da Interface do Usuário da Microsoft. Clientes típicos da Automação da Interface do Usuário da Microsoft não estão chamando métodos AutomationPeer diretamente. Esses clientes geralmente são tecnologias adaptativas que estão usando outros modelos de programação e operando como serviços e provavelmente não estão chamando métodos Windows Runtime. Mas o suporte geral da Automação da Interface do Usuário da Microsoft no Windows Runtime encaminha todas essas informações usando o lado do provedor da estrutura de Automação da Interface do Usuário da Microsoft. Todos os clientes para a Automação da Interface do Usuário da Microsoft podem interagir com as árvores de automação representativas de um aplicativo UWP usando C++, C#ou Visual Basic.

Disparar eventos de automação

A classe AutomationPeer é relevante para Windows Runtime autores de controle porque você terá uma instância de par disponível em tempo de execução, depois que o runtime invocar o método OnCreateAutomationPeer. Usando esse par, você pode disparar eventos de automação chamando RaiseAutomationEvent e RaisePropertyChangedEvent. Você faria isso sempre que uma propriedade relacionada no proprietário do par (sua classe) fosse alterada ou ao disparar um evento fosse necessária para o suporte correto à automação.

O design de suporte de automação não mantém um identificador para seu próprio par como parte de como você implementa OnCreateAutomationPeer, pois não há nenhuma garantia de quando o par é realmente criado. Em vez disso, você pode marcar para ouvintes de eventos de automação em tempo de execução dentro de suas definições de classe de controle just-in-time, usando um código como este:

if (AutomationPeer.ListenerExists(AutomationEvents.PropertyChanged))
{
    MyAutomationPeer peer = 
        FrameworkElementAutomationPeer.FromElement(myCtrl) as MyAutomationPeer;

    if (peer != null)
    {
        peer.RaisePropertyChangedEvent(
            RangeValuePatternIdentifiers.ValueProperty,
            (double)oldValue,
            (double)newValue);
    }
}
If AutomationPeer.ListenerExists(AutomationEvents.PropertyChanged) Then
    Dim peer As MyAutomationPeer = _
    TryCast(FrameworkElementAutomationPeer.FromElement(myCtrl), MyAutomationPeer)
    If peer IsNot Nothing Then
        peer.RaisePropertyChangedEvent(RangeValuePatternIdentifiers.ValueProperty, CDbl(oldValue), CDbl(newValue))
    End If
End If

Classes derivadas de AutomationPeer

AutomationPeer está na hierarquia para todos os pares existentes para os controles de Windows Runtime e classes de interface do usuário relacionadas.

As classes que derivam diretamente de AutomationPeer são:

Métodos principais

Os métodos "Core" são as implementações padrão que executam a ação padrão de um método callable do cliente da Automação da Interface do Usuário da Microsoft associado. Você pode substituir qualquer um dos métodos "Core" para retornar valores alternativos em um par de automação personalizado. Por exemplo, GetAcceleratorKeyCore é invocado sempre que GetAcceleratorKey é chamado, GetAccessKeyCore é invocado sempre que GetAccessKey é chamado e assim por diante.

A implementação base para AutomationPeer retorna nulo. Os pares que representam itens podem adiar o resultado para seu contêiner.

Histórico de versão

Versão do Windows Versão do SDK Valor adicionado
1511 10586 GetLandmarkType
1511 10586 GetLandmarkTypeCore
1511 10586 GetLocalizedLandmarkType
1511 10586 GetLocalizedLandmarkTypeCore
1607 14393 GetDescribedByCore
1607 14393 GetFlowsFromCore
1607 14393 GetFlowsToCore
1607 14393 GetFullDescription
1607 14393 GetFullDescriptionCore
1607 14393 IsDataValidForForm
1607 14393 IsDataValidForFormCore
1607 14393 IsPeripheral
1607 14393 IsPeripheralCore
1703 15063 GetCulture
1703 15063 GetCultureCore
1.709 16299 RaiseNotificationEvent
1803 17134 GetHeadingLevel
1803 17134 GetHeadingLevelCore
1809 17763 IsDialog
1809 17763 IsDialogCore

Construtores

AutomationPeer()

Fornece o comportamento de inicialização de classe base para classes derivadas de AutomationPeer .

Propriedades

Dispatcher

Obtém o CoreDispatcher ao qual esse objeto está associado. O CoreDispatcher representa uma instalação que pode acessar DependencyObject no thread da interface do usuário mesmo que o código seja iniciado por um thread que não seja da interface do usuário.

(Herdado de DependencyObject)
EventsSource

Obtém ou define um AutomationPeer que é relatado ao cliente de automação como a origem de todos os eventos provenientes desse AutomationPeer. Consulte Observações.

Métodos

ClearValue(DependencyProperty)

Limpa o valor local de uma propriedade de dependência.

(Herdado de DependencyObject)
GenerateRawElementProviderRuntimeId()

Gera um identificador de runtime para o elemento associado ao par de automação.

GetAcceleratorKey()

Obtém as combinações de teclas de acelerador para o objeto associado ao par de Automação da Interface do Usuário.

GetAcceleratorKeyCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetAcceleratorKey ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetAccessKey()

Obtém a chave de acesso para o elemento associado ao par de automação.

GetAccessKeyCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetAccessKey ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetAnimationBaseValue(DependencyProperty)

Retorna qualquer valor base estabelecido para uma propriedade de dependência, que se aplicaria nos casos em que uma animação não está ativa.

(Herdado de DependencyObject)
GetAnnotations()

Obtém uma referência à lista de anotações de automação da interface do usuário para o par de automação atual.

GetAnnotationsCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetAnnotations ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetAutomationControlType()

Obtém o tipo de controle para o elemento associado ao par de Automação da Interface do Usuário.

GetAutomationControlTypeCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetAutomationControlType ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetAutomationId()

Obtém a AutomationId do elemento associado ao par de automação.

GetAutomationIdCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetAutomationId ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetBoundingRectangle()

Obtém o objeto Rect que representa as coordenadas de tela do elemento associado ao par de automação.

GetBoundingRectangleCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetBoundingRectangle ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetChildren()

Obtém a coleção de elementos filho que são representados na árvore automação da interface do usuário como elementos filho imediatos do par de automação.

GetChildrenCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetChildren ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetClassName()

Obtém um nome que é usado com AutomationControlType, para diferenciar o controle representado por esse AutomationPeer.

GetClassNameCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetClassName ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetClickablePoint()

Obtém um ponto no elemento associado ao par de automação que responde a um clique do mouse.

GetClickablePointCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetClickablePoint ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetControlledPeers()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetControlledPeers ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft, como obter um valor de propriedade, conforme identificado por UIA_ControllerForPropertyId.

GetControlledPeersCore()

Obtém uma lista dos pares controlados para o par de automação atual.

GetCulture()

Chama GetCultureCore para obter o valor de cultura do elemento associado ao par de automação.

GetCultureCore()

Obtém o valor de cultura para o elemento associado ao par de automação.

GetDescribedByCore()

Obtém uma coleção de elementos que fornecem mais informações sobre o elemento de automação.

GetElementFromPoint(Point)

Obtém um elemento do ponto especificado.

GetElementFromPointCore(Point)

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetElementFromPoint ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetFlowsFromCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetFlowsFrom ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetFlowsToCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetFlowsTo ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetFocusedElement()

Obtém o elemento que atualmente tem o foco.

GetFocusedElementCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetFocusedElement ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetFullDescription()

Obtém uma cadeia de caracteres localizada que descreve a aparência visual real ou o conteúdo de algo como um controle de imagem ou imagem.

GetFullDescriptionCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetFullDescription ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetHeadingLevel()

Obtém o nível de título do elemento de Automação da Interface do Usuário associado a esse par de automação.

GetHeadingLevelCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetHeadingLevel ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetHelpText()

Obtém o texto que descreve a funcionalidade do controle associado ao par de automação.

GetHelpTextCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetHelpText ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetItemStatus()

Obtém o texto que transmite o status visual do elemento associado a esse par de automação.

GetItemStatusCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetItemStatus ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetItemType()

Obtém uma cadeia de caracteres que descreve o tipo de item que um elemento representa.

GetItemTypeCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetItemType ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetLabeledBy()

Obtém o AutomationPeer para o UIElement que é direcionado para o elemento .

GetLabeledByCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetLabeledBy ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetLandmarkType()

Obtém o tipo de ponto de referência para esse par de automação.

GetLandmarkTypeCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetLandmarkType ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetLevel()

Retorna o inteiro baseado em 1 para o nível (hierarquia) do elemento associado ao par de automação.

GetLevelCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetLevel ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetLiveSetting()

Obtém as informações de comportamento de notificação de configuração dinâmica para o objeto associado ao par de Automação da Interface do Usuário.

GetLiveSettingCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetLiveSetting ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetLocalizedControlType()

Obtém uma cadeia de caracteres localizada que representa o valor AutomationControlType para o controle associado a esse par de automação.

GetLocalizedControlTypeCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetLocalizedControlType ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetLocalizedLandmarkType()

Obtém uma cadeia de caracteres localizada que representa o valor AutomationLandmarkType para o elemento associado a esse par de automação.

GetLocalizedLandmarkTypeCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetLocalizedLandmarkType ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetName()

Obtém o texto que descreve o elemento associado a esse par de automação. O valor Nome da Automação da Interface do Usuário da Microsoft é o identificador principal usado pela tecnologia mais adaptativa quando eles representam a interface do usuário do aplicativo interagindo com a estrutura de Automação da Interface do Usuário da Microsoft.

GetNameCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetName ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetOrientation()

Obtém um valor que indica a orientação explícita do controle, se houver.

GetOrientationCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetOrientation ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetParent()

Obtém o AutomationPeer que é o pai desse AutomationPeer.

GetPattern(PatternInterface)

Obtém o padrão de controle associado ao PatternInterface especificado.

GetPatternCore(PatternInterface)

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama GetPattern ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetPeerFromPoint(Point)

Obtém um AutomationPeer do ponto especificado.

GetPeerFromPointCore(Point)

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetPeerFromPoint ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetPositionInSet()

Retorna o inteiro baseado em 1 para a posição ordinal no conjunto para o elemento associado ao par de automação.

GetPositionInSetCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetPositionInSet ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetSizeOfSet()

Retorna o inteiro baseado em 1 para o tamanho do conjunto em que o elemento associado ao par de automação está localizado.

GetSizeOfSetCore()

Fornece o comportamento do par quando um cliente de Automação da Interface do Usuário da Microsoft chama GetSizeOfSet ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

GetValue(DependencyProperty)

Retorna o valor efetivo atual de uma propriedade de dependência de um DependencyObject.

(Herdado de DependencyObject)
HasKeyboardFocus()

Obtém um valor que indica se o elemento associado a esse par de automação atualmente tem o foco do teclado.

HasKeyboardFocusCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama HasKeyboardFocus ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

InvalidatePeer()

Dispara o recálculo das propriedades main do AutomationPeer e gera a notificação PropertyChanged para o cliente de automação se as propriedades tiverem sido alteradas.

IsContentElement()

Obtém um valor que indica se o elemento associado a esse par de automação contém dados que são apresentados ao usuário.

IsContentElementCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama IsContentElement ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

IsControlElement()

Obtém um valor que indica se o elemento é compreendido pelo usuário como interativo ou como contribuindo para a estrutura lógica do controle na GUI.

IsControlElementCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama IsControlElement ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

IsDataValidForForm()

Obtém um valor booliano que indica se o valor inserido ou selecionado é válido para a regra de formulário associada ao elemento de automação.

IsDataValidForFormCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft acessa IsDataValidForForm ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

IsDialog()

Obtém um valor que indica se o elemento associado a esse par de automação é uma janela de diálogo.

IsDialogCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama IsDialog ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

IsEnabled()

Obtém um valor que indica se o elemento associado a esse par de automação é compatível com interação.

IsEnabledCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama IsEnabled ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

IsKeyboardFocusable()

Obtém um valor que indica se o elemento pode aceitar o foco do teclado.

IsKeyboardFocusableCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama IsKeyboardFocusable ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

IsOffscreen()

Obtém um valor que indica se um elemento está fora da tela.

IsOffscreenCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama IsOffscreen ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

IsPassword()

Obtém um valor que indica se há conteúdo confidencial no elemento.

IsPasswordCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama IsPassword ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

IsPeripheral()

Obtém um valor booliano que indica se o elemento de automação representa a interface do usuário periférica.

IsPeripheralCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft acessa IsPeripheral ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

IsRequiredForForm()

Obtém um valor que indica se o elemento associado a esse par deve ser preenchido em um formulário.

IsRequiredForFormCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama IsRequiredForForm ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

ListenerExists(AutomationEvents)

Obtém um valor que indica se a Automação da Interface do Usuário da Microsoft informa que um cliente está escutando o evento especificado.

Navigate(AutomationNavigationDirection)

Obtém o elemento na direção especificada na árvore de automação da interface do usuário.

NavigateCore(AutomationNavigationDirection)

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama Navigate ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

PeerFromProvider(IRawElementProviderSimple)

Obtém um AutomationPeer para o proxy IRawElementProviderSimple especificado.

ProviderFromPeer(AutomationPeer)

Obtém o proxy IRawElementProviderSimple para o AutomationPeer especificado.

RaiseAutomationEvent(AutomationEvents)

Gera um evento de automação.

RaiseNotificationEvent(AutomationNotificationKind, AutomationNotificationProcessing, String, String)

Inicia um evento de notificação.

RaisePropertyChangedEvent(AutomationProperty, Object, Object)

Gera um evento para notificar o cliente de automação de um valor da propriedade alterado.

RaiseStructureChangedEvent(AutomationStructureChangeType, AutomationPeer)

Gera um evento para notificar o núcleo da Automação da Interface do Usuário da Microsoft de que a estrutura de árvore foi alterada.

RaiseTextEditTextChangedEvent(AutomationTextEditChangeType, IVectorView<String>)

Gera um evento para notificar o núcleo da Automação da Interface do Usuário da Microsoft de que um controle de texto alterou o texto programaticamente.

ReadLocalValue(DependencyProperty)

Retorna o valor local de uma propriedade de dependência, se um valor local for definido.

(Herdado de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra uma função de notificação para escutar alterações em uma DependencyProperty específica nesta instância dependencyObject .

(Herdado de DependencyObject)
SetFocus()

Define o foco do teclado no elemento associado a esse par de automação.

SetFocusCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama SetFocus ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

SetParent(AutomationPeer)

Define o AutomationPeer que é o pai desse AutomationPeer.

SetValue(DependencyProperty, Object)

Define o valor local de uma propriedade de dependência em um DependencyObject.

(Herdado de DependencyObject)
ShowContextMenu()

Mostra o menu de contexto disponível para o elemento proprietário.

ShowContextMenuCore()

Fornece o comportamento do par quando um cliente da Automação da Interface do Usuário da Microsoft chama ShowContextMenu ou uma API de cliente equivalente da Automação da Interface do Usuário da Microsoft.

UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Cancela uma notificação de alteração que foi registrada anteriormente chamando RegisterPropertyChangedCallback.

(Herdado de DependencyObject)

Aplica-se a

Confira também