Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
Esta documentação destina-se a desenvolvedores do .NET Framework que desejam usar as classes de 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 de utilizador, consulte API de automação do Windows: Automação da Interface de Utilizador.
Os fornecedores de automação da interface do usuário expõem propriedades nos elementos de automação da interface do usuário da Microsoft. Essas propriedades permitem que os aplicativos cliente de Automação da Interface do Usuário descubram informações sobre partes da interface do usuário (UI), especialmente controles, incluindo dados estáticos e dinâmicos.
Esta seção fornece uma ampla visão geral das propriedades da Automação da Interface do Usuário da Microsoft. São fornecidas informações mais específicas nos seguintes tópicos:
Propriedades de automação da interface do usuário para clientes
Server-Side Implementação de Provedor de Automação de Interface do Usuário
Identificadores de propriedade
Cada propriedade é identificada por um número e um nome. Os nomes das propriedades são usados apenas para depuração e diagnóstico. Os provedores usam os identificadores numéricos para identificar requisições de propriedades recebidas. Os aplicativos cliente, no entanto, usam apenas AutomationProperty, que encapsula o número e o nome, para identificar as propriedades que desejam recuperar.
AutomationProperty Os objetos que representam propriedades específicas estão disponíveis como campos em várias classes. Por motivos de segurança, os provedores de Automação da Interface do Usuário obtêm esses objetos de um conjunto separado de classes contidas no Uiautomationtypes.dll.
A tabela a seguir categoriza as propriedades pelas classes que contêm as AutomationPropertyIDs.
Tipos de propriedades | Os clientes obtêm identificações de | Os fornecedores obtêm identificadores de |
---|---|---|
Propriedades comuns a todos os elementos (consulte as tabelas a seguir) | AutomationElement | AutomationElementIdentifiers |
Posição de uma janela de ancoragem | DockPattern | DockPatternIdentifiers |
Estado de um elemento que pode expandir-se e contrair | ExpandCollapsePattern | ExpandCollapsePatternIdentifiers |
Propriedades de um item numa grelha | GridItemPattern | GridItemPatternIdentifiers |
Propriedades de uma grelha | GridPattern | GridPatternIdentifiers |
Vista atual e suportada de um elemento que tem várias vistas | MultipleViewPattern | MultipleViewPatternIdentifiers |
Propriedades de um elemento que se move sobre um intervalo de valores, como um controle deslizante | RangeValuePattern | RangeValuePatternIdentifiers |
Propriedades de uma janela de rolagem | ScrollPattern | ScrollPatternIdentifiers |
Estado e contentor de um item que pode ser selecionado, como numa lista | SelectionItemPattern | SelectionItemPatternIdentifiers |
Propriedades de um controle que contém itens de seleção | SelectionPattern | SelectionPatternIdentifiers |
Cabeçalhos de coluna e linha de um item numa tabela | TableItemPattern | TableItemPatternIdentifiers |
Cabeçalhos de coluna e linha e orientação de uma tabela | TablePattern | TablePatternIdentifiers |
Estado de um controle de alternância | TogglePattern | TogglePatternIdentifiers |
Recursos de um elemento que pode ser movido, girado ou redimensionado | TransformPattern | TransformPatternIdentifiers |
Valor e recursos de leitura/gravação de um elemento que tem um valor | ValuePattern | ValuePatternIdentifiers |
Capacidades e estado de uma janela | WindowPattern | WindowPatternIdentifiers |
Propriedades por Categoria
As tabelas a seguir categorizam as propriedades cujos IDs são encontrados em AutomationElement e AutomationElementIdentifiers. Essas propriedades são comuns a todos os controles. Todos, exceto alguns, provavelmente serão estáticos ao longo da vida útil do aplicativo provedor; A maioria das propriedades dinâmicas estão associadas a padrões de controle.
A coluna Acesso à propriedade lista todos os outros acessadores para cada propriedade, além de GetCurrentPropertyValue e GetCachedPropertyValue. Para obter mais informações sobre como obter propriedades em um aplicativo cliente, consulte Propriedades de automação da interface do usuário para clientes.
Observação
Para obter informações específicas sobre cada propriedade, siga o link na coluna Acesso à propriedade .
Características do ecrã
Identificador de propriedade | Acesso à propriedade |
---|---|
BoundingRectangleProperty | BoundingRectangle |
CultureProperty | não aplicável |
HelpTextProperty | HelpText |
IsOffscreenProperty | IsOffscreen |
OrientationProperty | Orientation |
Tipo de elemento
Identificador de propriedade | Acesso à propriedade |
---|---|
ControlTypeProperty | ControlType |
IsContentElementProperty | IsContentElement |
IsControlElementProperty | IsControlElement |
ItemTypeProperty | ItemType |
LocalizedControlTypeProperty | LocalizedControlType |
Identificação
Identificador de propriedade | Acesso à propriedade |
---|---|
AutomationIdProperty | AutomationId |
ClassNameProperty | ClassName |
FrameworkIdProperty | FrameworkId |
LabeledByProperty | LabeledBy |
NameProperty | Name |
ProcessIdProperty | ProcessId |
RuntimeIdProperty | GetRuntimeId |
NativeWindowHandleProperty | NativeWindowHandle |
Interação
Identificador de propriedade | Acesso à propriedade |
---|---|
AcceleratorKeyProperty | AcceleratorKey |
AccessKeyProperty | AccessKey |
ClickablePointProperty | GetClickablePoint |
HasKeyboardFocusProperty | HasKeyboardFocus |
IsEnabledProperty | IsEnabled |
IsKeyboardFocusableProperty | IsKeyboardFocusable |
Suporte para padrões
Diversos
Identificador de propriedade | Acesso à propriedade |
---|---|
IsRequiredForFormProperty | IsRequiredForForm |
IsPasswordProperty | IsPassword |
ItemStatusProperty | ItemStatus |
Localização
Os provedores de automação da interface do usuário devem apresentar as seguintes propriedades no idioma do sistema operacional:
Propriedades e Eventos
O conceito de eventos de alteração de propriedade está intimamente ligado às propriedades na Automação da Interface do Usuário. Para propriedades dinâmicas, o aplicativo cliente precisa de uma maneira de saber que um valor de propriedade foi alterado, para que ele possa atualizar seu cache de informações ou reagir às novas informações de alguma outra maneira.
Os provedores geram eventos quando algo na interface do usuário muda. Por exemplo, se uma caixa de seleção estiver marcada ou desmarcada, um evento de alteração de propriedade será gerado pela implementação do padrão Toggle pelo provedor. Os provedores podem gerar eventos seletivamente, dependendo se algum cliente está ouvindo eventos ou ouvindo eventos específicos.
Nem todas as mudanças de propriedade geram eventos; isso depende inteiramente da implementação do provedor de automação da interface do usuário para o elemento. Por exemplo, os provedores de proxy padrão para caixas de listagem não geram um evento quando as SelectionProperty mudam. Nesse caso, o aplicativo deve escutar um ElementSelectedEventarquivo .
Os clientes ouvem os eventos subscrevendo-os. Inscrever-se em eventos significa criar métodos delegados que podem manipular os eventos e, em seguida, passar os métodos para a Automação da Interface do Usuário juntamente com os eventos específicos que serão tratados nesses métodos. Para eventos de alteração de propriedade em particular, os clientes devem implementar AutomationPropertyChangedEventHandler.
Ver também
- Caching em clientes de automação da interface do usuário
- Propriedades de automação da interface do usuário para clientes
- Server-Side Implementação de Provedor de Automação de Interface do Usuário
- Localizar um elemento de automação da interface do usuário com base em uma condição de propriedade
- Propriedades de Retorno de um Provedor de Automação de Interface
- Gerar eventos de um provedor de automação da interface do usuário