Partilhar via


Implementando o padrão de controle de janela de automação da interface do usuário

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 IWindowProvider, incluindo informações sobre WindowPattern propriedades, métodos e eventos. Links para referências adicionais estão listados no final do tópico.

O WindowPattern padrão de controle é usado para suportar controles que fornecem funcionalidade fundamental baseada em janela dentro de uma interface gráfica do usuário (GUI) tradicional. Exemplos de controles que devem implementar esse padrão de controle incluem janelas de aplicativos de nível superior, janelas filhas de interface de vários documentos (MDI), controles de painel dividido redimensionáveis, caixas de diálogo modais e janelas de ajuda de balão.

Orientações e convenções de aplicação

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

  • Para suportar a capacidade de modificar o tamanho da janela e a posição do ecrã usando a Automação da Interface do Usuário, um controlo deve implementar ITransformProvider além de IWindowProvider.

  • Os controles que contêm barras de título e elementos da barra de título que permitem mover, redimensionar, maximizar, minimizar ou fechar o controle são normalmente necessários para implementar IWindowProvider.

  • Controles, como dicas de ferramenta e caixas de seleção ou menus suspensos, normalmente não implementam IWindowProvider.

  • As janelas de ajuda em balão são diferenciadas dos pop-ups básicos de dicas de ferramentas pelo fornecimento de um botão Fechar similar ao de uma janela.

  • O modo de tela cheia não é suportado pelo IWindowProvider, pois é específico de um recurso para um aplicativo e não é um comportamento típico de janela.

Membros necessários para IWindowProvider

As seguintes propriedades, métodos e eventos são necessários para a interface IWindowProvider.

Membro obrigatório Tipo de membro Observações
InteractionState Propriedade Nenhum
IsModal Propriedade Nenhum
IsTopmost Propriedade Nenhum
Maximizable Propriedade Nenhum
Minimizable Propriedade Nenhum
VisualState Propriedade Nenhum
Close Método Nenhum
SetVisualState Método Nenhum
WaitForInputIdle Método Nenhum
WindowClosedEvent Evento Nenhum
WindowOpenedEvent Evento Nenhum
WindowInteractionState Evento Não é garantido que seja ReadyForUserInteraction

Exceções

Os provedores devem lançar as seguintes exceções.

Tipo de exceção Condição
InvalidOperationException SetVisualState

- Quando um controle não suporta um comportamento solicitado.
ArgumentOutOfRangeException WaitForInputIdle

- Quando o parâmetro não é um número válido.

Ver também