Padrão de controle de seleção

Descreve as diretrizes e convenções para implementar o ISelectionProvider, incluindo informações sobre propriedades, métodos e eventos. O padrão de controle Seleção é usado para dar suporte a controles que atuam como contêineres para uma coleção de itens filho selecionáveis. Os filhos desse elemento devem implementar ISelectionItemProvider.

Para obter exemplos de controles que implementam esse padrão de controle, consulte Tipos de controle e seus padrões de controle com suporte.

Este tópico inclui as seções a seguir.

Diretrizes e convenções de implementação

Ao implementar o padrão de controle Seleção , observe as seguintes diretrizes e convenções:

  • Os controles que implementam o ISelectionProvider permitem que itens únicos ou vários filhos sejam selecionados. Por exemplo, caixas de listagem, exibições de lista e exibições de árvore dão suporte a várias seleções, enquanto caixas de combinação, controles deslizantes e grupos de botões de opção dão suporte à seleção única.

  • Controles que têm um intervalo mínimo, máximo e contínuo, como o controle deslizante volume de um player de mídia, devem implementar IRangeValueProvider em vez de ISelectionProvider.

  • 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 para Windows ou o controle de seleção seletor de cores do Microsoft Word (consulte a imagem a seguir), devem implementar ISelectionProvider; seus filhos devem implementar IRawElementProviderFragment e ISelectionItemProvider.

    imagem mostrando um exemplo de mapeamento de cadeia de caracteres de amostra de cor

  • Os menus não dão suporte ao padrão de controle Seleção . 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, você deverá implementar IToggleProvider.

Membros necessários para ISelectionProvider

As propriedades, métodos e eventos a seguir são necessários para implementar a interface ISelectionProvider .

Membros necessários Tipo de membro Observações
CanSelectMultiple Propriedade Nenhum
Isselectionrequired Propriedade Nenhum
Getselection Método Nenhum
UIA_Selection_InvalidatedEventId Evento Gere esse evento quando uma seleção em um contêiner tiver sido alterada significativamente.

 

As propriedades ISelectionProvider::IsSelectionRequired 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 posteriormente permitir que apenas seleções únicas sejam feitas.

Tipos de controle e seus padrões de controle com suporte

Padrão de controle SelectionItem

Visão Geral de Padrões de Controle de Automação de Interface de Usuário

Visão geral da árvore de automação de interface do usuário