Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você 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 de 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 diretrizes e convenções para implementação IWindowProvider, incluindo informações sobre WindowPattern propriedades, métodos e eventos. Links para referências adicionais são listados no final do tópico.
O WindowPattern padrão de controle é usado para dar suporte a controles que fornecem funcionalidade baseada em janela fundamental em uma GUI (interface gráfica) tradicional do usuário. Exemplos de controles que devem implementar esse padrão de controle incluem janelas de aplicativo de nível superior, janelas filho da MDI (interface de vários documentos), controles de painel dividido redimensionáveis, diálogos modais e janelas de ajuda de balão.
Diretrizes e convenções de implementação
Ao implementar o padrão de controle janela, observe as seguintes diretrizes e convenções:
Para dar suporte à capacidade de modificar o tamanho da janela e a posição da tela usando Automação de Interface de Usuário, um controle deve implementar ITransformProvider além de IWindowProvider.
Controles que contêm barras de título e elementos da barra de título que permitem que o controle seja movido, redimensionado, maximizado, minimizado ou fechado normalmente são necessários para implementar IWindowProvider.
Controles como pop-ups de dica de ferramenta e caixa de combinação ou menu suspensos normalmente não implementam IWindowProvider.
As janelas de ajuda de balão são diferenciadas dos pop-ups básicos da dica de ferramenta pelo provisionamento de um botão Fechar semelhante a uma janela.
O modo de tela inteira não tem suporte do IWindowProvider, pois é específico do recurso para um aplicativo e não é um comportamento típico da janela.
Membros necessários para IWindowProvider
As propriedades, métodos e eventos a seguir são necessários para a interface IWindowProvider.
| Membro necessário | Tipo de membro | Anotaçõ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 | Acontecimento | Nenhum |
| WindowOpenedEvent | Acontecimento | Nenhum |
| WindowInteractionState | Acontecimento | Não é garantido que seja ReadyForUserInteraction |
Exceções
Os provedores devem gerar as exceções a seguir.
| Tipo de exceção | Condição |
|---|---|
| InvalidOperationException | SetVisualState - Quando um controle não dá suporte a um comportamento solicitado. |
| ArgumentOutOfRangeException | WaitForInputIdle - Quando o parâmetro não é um número válido. |
Consulte também
- Visão geral dos padrões de controle de automação da interface do 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
- Visão geral da árvore de automação da interface do usuário
- Usar armazenamento em cache em automação de interface do usuário