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.
Lista os padrões de controlo Microsoft Automatização da Interface de Utilizador, as classes que os clientes usam para os aceder e as interfaces que os fornecedores usam para os implementar.
A tabela deste tópico descreve os padrões de controlo de Automação de UI da Microsoft. A tabela também lista as classes usadas pelos clientes de Automatização da Interface de Utilizador para aceder aos padrões de controlo e às interfaces usadas pelos fornecedores de Automatização da Interface de Utilizador para os implementar. A coluna Control pattern mostra o nome do padrão a partir da perspetiva do cliente Automatização da Interface de Utilizador, como um valor constante listado em Control Pattern Availability Property Identifiers. Do ponto de vista do fornecedor de Automatização da Interface de Utilizador, cada um destes padrões é um nome constante PatternInterface. A coluna Provider interface mostra o nome da interface Microsoft.UI.Xaml.Automation.Provider que os 'providers' implementam para fornecer este padrão de interface para um controlo XAML personalizado.
Para mais informações sobre como implementar pares de automação personalizados que expõem padrões de controlo e implementam as interfaces, veja Pares de automação personalizados.
Ao implementar um padrão de controlo, deve também consultar a documentação do fornecedor de Automatização da Interface de Utilizador, que explica algumas das expectativas que os clientes terão de um padrão de controlo, independentemente do framework de UI usado para o implementar. Algumas das informações listadas na documentação geral do fornecedor de Automatização da Interface de Utilizador influenciam a forma como implementas os teus pares e suportas corretamente esse padrão. Consulte Implementing Automatização da Interface de Utilizador Control Patterns, e consulte a página que documenta o padrão que pretende implementar.
| Padrão de controlo | Interface do fornecedor WinUI | Equivalente legado do UWP | Descrição |
|---|---|---|---|
| Annotation | IAnnotationProvider | IAnnotationProvider | Usado para expor as propriedades de uma anotação num documento. |
| Dock | IDockProvider | IDockProvider | Usado para controles que podem ser encaixados em um contêiner de encaixe. Por exemplo, barras de ferramentas ou paletas de ferramentas. |
| Drag | IDragProvider | IDragProvider | Usado para suportar controlos arrastáveis, ou controlos com itens arrastáveis. |
| DropTarget | IDropTargetProvider | IDropTargetProvider | Usado para suportar controlos que podem ser alvo de uma operação de arrastar e largar. |
| ExpandCollapse | IExpandCollapseProvider | IExpandCollapseProvider | Usado para suportar controlos que se expandem visualmente para mostrar mais conteúdo e depois colapsam para ocultar conteúdo. |
| Grelha | IGridProvider | IGridProvider | Usado para controlos que suportam a funcionalidade de grelha, como o dimensionamento e a movimentação para uma célula especificada. Note que o próprio Grid não implementa este padrão porque fornece layout, mas não é um controlo. |
| GridItem | IGridItemProvider | IGridItemProvider | Usado para controles que têm células dentro de grades. |
| Invoque | IInvokeProvider | IInvokeProvider | Usado para controlos que podem ser invocados, como um Botão. |
| ItemContainer | IItemContainerProvider | IItemContainerProvider | Permite às aplicações encontrar um elemento num contentor, como uma lista virtualizada. |
| MultipleView | IMultipleViewProvider | IMultipleViewProvider | Usado para controles que podem alternar entre várias representações do mesmo conjunto de informações, dados ou filhos. |
| ObjectModel | IObjectModelProvider | IObjectModelProvider | Usado para expor um ponteiro ao modelo de objeto subjacente de um documento. |
| RangeValue | IRangeValueProvider | IRangeValueProvider | Usado para controles que têm um intervalo de valores que podem ser aplicados ao controle. Por exemplo, um controlo de spinner contendo anos pode ter um intervalo de 1900 até ao ano atual, enquanto outro controlo de spinner que apresenta meses teria um intervalo de 1 a 12. |
| Scroll | IScrollProvider | IScrollProvider | Usado para controles que podem rolar. Por exemplo, um controle que tem barras de rolagem que estão ativas quando há mais informações do que pode ser exibido na área visível do controle. |
| ScrollItem | IScrollItemProvider | IScrollItemProvider | Usado para controles que têm itens individuais em uma lista que rola. Por exemplo, um controle de lista que tem itens individuais na lista de rolagem, como um controle de caixa de combinação. |
| Seleção | ISelectionProvider | ISelectionProvider | Usado para controles de contêiner de seleção. Por exemplo, ListBox e ComboBox. |
| SelectionItem | ISelectionItemProvider | ISelectionItemProvider | Usado para itens individuais em controles de seleção, como caixas de lista e caixas de combinação. |
| Folha de cálculo | ISpreadsheetProvider | ISpreadsheetProvider | Usado para expor o conteúdo de uma folha de cálculo ou outro documento baseado em grelha. |
| SpreadsheetItem | ISpreadsheetItemProvider | ISpreadsheetItemProvider | Usado para expor as propriedades de uma célula numa folha de cálculo ou outro documento baseado em grelha. |
| Estilos | IStylesProvider | IStylesProvider | Usado para descrever um elemento de interface que tem um estilo específico, cor de preenchimento, padrão de preenchimento ou forma. |
| SynchronizedInput | ISynchronizedInputProvider | ISynchronizedInputProvider | Permite que as aplicações clientes de Automatização da Interface de Utilizador direcionem a entrada do rato ou teclado para um elemento específico da interface. |
| Tabela | ITableProvider | ITableProvider | Usado para controles que têm uma grade, bem como informações de cabeçalho. Por exemplo, um controle de calendário tabular. |
| ElementoDaTabela | ITableItemProvider | ITableItemProvider | Usado para itens numa tabela. |
| Texto | ITextProvider | ITextProvider | Usado para editar controles e documentos que expõem informações textuais. Ver também ITextRangeProvider e ITextProvider2. |
| TextChild | ITextChildProvider | ITextChildProvider | Usado para aceder ao mais próximo ancestral de um elemento que suporta o padrão de controlo Text. |
| TextEdit | Não há classe gerenciada disponível | Não há classe gerenciada disponível | Fornece acesso a um controlo que modifica texto, por exemplo, um controlo que realiza auto-correção ou permite a composição de entrada através de um Editor de Métodos de Entrada (IME). |
| Intervalo de texto | ITextRangeProvider | ITextRangeProvider | Fornece acesso a um espaço de texto contínuo num contentor de texto que implementa o ITextProvider. Ver também ITextRangeProvider2. |
| Alternar | IToggleProvider | IToggleProvider | Usado para controlos onde é possível alternar o estado. Por exemplo, CheckBox e os itens de menu que podem ser selecionados. |
| Transformar | ITransformProvider | ITransformProvider | Usado para controles que podem ser redimensionados, movidos e girados. Os usos típicos para o padrão de controle Transform são em designers, formulários, editores gráficos e aplicativos de desenho. |
| Value | IValueProvider | IValueProvider | Permite que os clientes obtenham ou definam um valor em controles que não oferecem suporte a um intervalo de valores. |
| VirtualizedItem | IVirtualizedItemProvider | IVirtualizedItemProvider | Expõe itens dentro de contentores virtualizados que precisam de ser totalmente acessíveis como elementos de Automatização da Interface de Utilizador. |
| Janela | IWindowProvider | IWindowProvider | Expõe informação específica de windows, um conceito fundamental para o sistema operativo Microsoft Windows. Exemplos de controlos que são janelas incluem janelas filhas e caixas de diálogo. |
Observação
Nem todos estes padrões são implementados por controlos XAML existentes. Algumas interfaces de padrões existem apenas para manter a paridade com as definições de padrões do framework geral de Automatização da Interface de Utilizador e para suportar cenários entre pares de automação que requerem uma implementação totalmente personalizada.
Tópicos relacionados
Windows developer