Implementando o padrão de controle SelectionItem de interface de usuário
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 Automação de Interface do Usuário, consulte API de Automação do Windows: Automação de Interface do Usuário.
Este tópico apresenta as diretrizes e as convenções para implementar ISelectionItemProvider, incluindo informações sobre propriedades, métodos e eventos. Os links para referências adicionais estão listados no final da visão geral.
O padrão de controle SelectionItemPattern é usado para dar suporte a controles que atuam como itens filho individuais selecionáveis e individuais de controles de contêiner que implementam ISelectionProvider. Para obter os exemplos de controles que implementam o padrão de controle SelectionItem, consulte Mapeamento de padrão de controle para clientes de Automação da Interface do Usuário.
Diretrizes e convenções de implementação
Ao implementar o padrão de controle Item de Seleção, observe as seguintes diretrizes e convenções:
- Os controles de seleção única que gerenciam controles filho que implementam IRawElementProviderFragmentRoot, como o controle deslizante de Resolução de Tela na caixa de diálogo Propriedades de Exibição, devem implementar ISelectionProvider e os respectivos filhos devem implementar IRawElementProviderFragment e ISelectionItemProvider.
Membros necessários para ISelectionItemProvider
As propriedades, os métodos e eventos a seguir são necessários para implementar ISelectionItemProvider.
Membros necessários | Tipo de membro | Observações |
---|---|---|
IsSelected | Propriedade | Nenhum |
SelectionContainer | Propriedade | Nenhum |
AddToSelection | Método | Nenhum |
RemoveFromSelection | Método | Nenhum |
Select | Método | Nenhum |
ElementSelectedEvent | Evento | Acionado quando uma alteração de seleção resulta em um único item selecionado. |
ElementAddedToSelectionEvent | Evento | Acionado quando um item é adicionado a um contêiner de seleção múltipla. |
ElementRemovedFromSelectionEvent | Evento | Acionado quando um item é removido de um contêiner de seleção múltipla. |
InvalidatedEvent | Evento | Gerado quando uma seleção em um contêiner foi alterada significativamente e exige o envio de mais eventos ElementSelectedEvent e ElementRemovedFromSelectionEvent do que a constante InvalidateLimit. |
- Se uma operação Select, AddToSelectionou RemoveFromSelection resultar em um único item selecionado, crie ElementSelectedEvent; caso contrário, crie ElementAddedToSelectionEvent ou ElementRemovedFromSelectionEvent conforme apropriado.
Exceções
Os provedores devem gerar as exceções a seguir.
Tipo de exceção | Condição |
---|---|
InvalidOperationException | Quando qualquer uma das seguintes tentativas for realizada: - RemoveFromSelection é chamado em um contêiner de seleção única em que IsSelectionRequiredProperty = true e um elemento já está selecionado.- RemoveFromSelection é chamado em um contêiner de seleção múltipla em que IsSelectionRequiredProperty = true e apenas um elemento é selecionado.- AddToSelection é chamado em um contêiner de seleção única em que CanSelectMultipleProperty = false e outro elemento já está selecionado. |
Confira também
- Visão Geral de Padrões de Controle de Automação de Interface de Usuário
- Padrões de controle de suporte em um provedor de automação da interface do usuário
- Padrões de Controle para Clientes de Automação de IU
- Implementando o padrão de controle Selection de automação de interface do usuário
- Visão geral da árvore de automação de interface do usuário
- Usar armazenamento em cache em automação de interface do usuário
- Amostra de provedor de fragmento