Implementando o padrão de controle de automação de interface do usuário ExpandCollapse
Este tópico apresenta diretrizes e convenções para a implementação IExpandCollapseProvedorIncluindo informações sobre propriedades, métodos e eventos.Links para referências adicionais são listadas no final da revisão.
O ExpandCollapsePattern Controle padrão é usada para oferecer suporte aos controles que visualmente para exibir o conteúdo mais Expandirem e recolher para ocultar o conteúdo.Para obter exemplos de controles que implementam esse padrão de controle, consulte Mapeamento de Padrão de Controles para Clientes de Automação de IU.
Este tópico contém as seguintes seções.
- Orientações e Convenções de Implementação
- Membros necessários para IExpandCollapseProvider
- Exceções
- Tópicos relacionados
Orientações e Convenções de Implementação
Ao implementar o padrão de controles ExpandCollapse, observe as seguintes diretrizes e convenções:
Agregação controles — criados com os objetos filho que fornecem funcionalidade expandir/recolher o interface do usuário — deve oferecer suporte a ExpandCollapsePattern Controle padrão enquanto seus elementos filho não.Por exemplo, um controle caixa de combinação é criado com uma combinação de caixa de listagem, botão e Editar controles, mas ela é apenas o caixa de combinação pai que deve oferecer suporte a ExpandCollapsePattern.
Observação: Uma exceção é o controle menu, que é um agregado de objetos individuais MenuItem.Os objetos MenuItem podem oferecer suporte a ExpandCollapsePattern Padrão de controle, mas o menu controle pai não é possível.Uma exceção similar se aplica a controles Tree e TreeItem.
Quando o ExpandCollapseState de um controle é definido como LeafNode()Qualquer ExpandCollapsePattern a funcionalidade é inAtivo no momento para o controle e a única informação que pode ser obtida usando esse controle padrão é o ExpandCollapseState.Se quaisquer objetos filho forem adicionados subseqüentemente, o ExpandCollapseState As alterações e ExpandCollapsePattern a funcionalidade é ativada.
ExpandCollapseState Refere-se à visibilidade do objetos filhos imediatos somente; Ele não se refere a visibilidade de todos os objetos descendentes.
A funcionalidade de expandir e recolher é específica de cada controle.A seguir temos exemplos desse comportamento.
O menu particular do Office pode ser um (MenuItem de Três Páginas-estadoExpanded, Collapsed e PartiallyExpanded onde o controle especifica o estado para adotar quando um [M:System.Windows.Automation.ExpandCollapsePadrão.Expand] ou Collapse é chamado.
Chamando [M:System.Windows.Automation.ExpandCollapsePadrão.Expand] Pode exibir todos os descendentes ou filhos imediatos somente um TreeItem.
Se chamar [M:System.Windows.Automation.ExpandCollapsePadrão.Expand] ou Collapse Em um controle mantém o estado de seus descendentes, um evento de alteração de visibilidade deve ser enviado, não um estado Alterar evento se o controle pai não mantém o estado de seus descendentes Quando recolhido, o controle pode destruir todos os descendentes que não estão mais visível e elevar um evento destruído; Ou ele pode alterar o ExpandCollapseState() Para cada descendente e aumentar uma visibilidade Alterar evento.
Para garantir de navegação, é desejável para um objeto a ser o Relação de árvore (com estado visibilidade apropriada) Menos de seus pais ExpandCollapseState.Se descendentes são geradas por demanda, eles só podem aparecer na árvore após sendo exibidos para o primeiro tempo ou apenas enquanto estiverem Visível.
Membros necessários para IExpandCollapseProvider
O seguintes propriedades e métodos estão necessários para implementação IExpandCollapseProvedor.
Membros Requeridos |
Tipo do membro |
Anotações |
---|---|---|
ExpandCollapseState() |
Propriedade |
Nenhum |
[M:System.Windows.Automation.ExpandCollapsePadrão.Expand] |
Método |
Nenhum |
Método |
Nenhum |
|
Evento |
Este controle não tem eventos associados; use este delegado genérico. |
Exceções
Provedores precisam lançar as seguintes exceções.
Tipo de exceção |
Condição |
---|---|
Ambos [M:System.Windows.Automation.ExpandCollapsePadrão.Expand] ou Collapse é chamado quando o ExpandCollapseState = LeafNode(). |
Consulte também
Tarefas
Support Control Patterns in a UI Automation Provider
Navigate Among UI Automation Elements with TreeWalker
Conceitos
Visão Geral de Padrões de Controle de Automação de Interface de Usuário