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.
Este tópico apresenta diretrizes e convenções para implementação ISelectionProvider, incluindo informações sobre eventos e propriedades. Links para referências adicionais estão listados no final do tópico.
O padrão de controlo SelectionPattern é usado para suportar controlos que atuam como contentores para uma coleção de itens-filho selecionáveis. Os filhos deste elemento devem implementar ISelectionItemProvider. Para obter exemplos de controles que implementam esse padrão de controle, consulte Control Pattern Mapping for UI Automation Clients.
Orientações e convenções de aplicação
Ao implementar o padrão de controle Seleção, observe as seguintes diretrizes e convenções:
Os controles que implementam ISelectionProvider permitem que um ou vários itens filho sejam selecionados. Por exemplo, a caixa de lista, a visualização de lista e a visualização em árvore suportam várias seleções, enquanto a caixa de combinação, o controlo deslizante e o grupo de botões de rádio suportam seleção única.
Os controles que têm um intervalo mínimo, máximo e contínuo, como o controle deslizante Volume , devem implementar IRangeValueProvider em vez de ISelectionProvider.
Os controles de seleção única que gerenciam controles filho que implementam IRawElementProviderFragmentRoot, como o controle deslizante Resolução de Tela na caixa de diálogo Propriedades de Exibição ou o controle de seleção do Seletor de Cores do Microsoft Word (ilustrado abaixo), devem implementar ISelectionProvider; seus filhos devem implementar ambos IRawElementProviderFragment e .ISelectionItemProvider
Exemplo de mapeamento de amostra de cor
- Os menus não suportam SelectionPattern. Se você estiver trabalhando com itens de menu que incluem elementos gráficos e texto (como os itens do Painel de Visualização no menu Exibir no Microsoft Outlook) e precisar transmitir o estado, implemente IToggleProvidero .
Membros necessários para ISelectionProvider
As seguintes propriedades, métodos e eventos são necessários para a ISelectionProvider interface.
| Membros obrigatórios | Tipo | Observações |
|---|---|---|
| CanSelectMultiple | Propriedade | Deve suportar eventos alterados de propriedade usando AddAutomationPropertyChangedEventHandler e RemoveAutomationPropertyChangedEventHandler. |
| IsSelectionRequired | Propriedade | Deve suportar eventos alterados de propriedade usando AddAutomationPropertyChangedEventHandler e RemoveAutomationPropertyChangedEventHandler. |
| GetSelection | Método | Nenhum |
| InvalidatedEvent | Evento | Gerado quando uma seleção num contentor mudou significativamente e requer o envio de mais eventos de adição e remoção do que a constante InvalidateLimit permite. |
As IsSelectionRequired propriedades e CanSelectMultiple podem ser dinâmicas. Por exemplo, o estado inicial de um controle pode não ter nenhum item selecionado por padrão, indicando que IsSelectionRequired é false. No entanto, depois que um item é selecionado, o controle sempre deve ter pelo menos um item selecionado. Da mesma forma, em casos raros, um controle pode permitir que vários itens sejam selecionados na inicialização, mas subsequentemente permitir que apenas seleções únicas sejam feitas.
Exceções
Os provedores devem lançar as seguintes exceções.
| Tipo de Exceção | Condição |
|---|---|
| ElementNotEnabledException | Se o controle não estiver habilitado. |
| InvalidOperationException | Se o controle estiver oculto. |
Ver também
- Visão geral dos padrões de controle de automação da interface do usuário
- Suportar Padrões de Controle em um Provedor de Automação de Interface do Usuário
- Padrões de Controle de Automação da Interface do Usuário para Clientes
- Implementação do Padrão de Controle de Item de Seleção na Automação da IU
- Visão geral da árvore de automação da interface do usuário
- Use o armazenamento em cache na automação da interface do utilizador