Implementando o padrão de controle de janela de automação da interface do usuário
Nota
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 System.Windows.Automation namespace. Para obter as informações mais recentes sobre a automação da interface do usuário, consulte API de automação do Windows: automação da 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 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 da tela usando a Automação da Interface do Usuário, um controle deve ser implementado ITransformProvider além do IWindowProvider.
Os 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 são normalmente necessários para implementar IWindowProvidero .
Controles como pop-ups de dica de ferramenta e caixa de combinação ou menus suspensos normalmente não implementam IWindowProvidero .
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 semelhante a 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 | Notas |
---|---|---|
InteractionState | Property | Nenhuma |
IsModal | Property | Nenhuma |
IsTopmost | Property | Nenhuma |
Maximizable | Property | Nenhuma |
Minimizable | Property | Nenhuma |
VisualState | Property | Nenhuma |
Close | Método | Nenhuma |
SetVisualState | Método | Nenhuma |
WaitForInputIdle | Método | Nenhuma |
WindowClosedEvent | Evento | Nenhuma |
WindowOpenedEvent | Evento | Nenhuma |
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. |
Consulte também
- Visão geral dos padrões de controle de automação da interface do usuário
- Suporte a padrões de controle em um provedor de automação de interface do usuário
- Padrões de controle de automação da interface do usuário para clientes
- Visão geral da árvore de automação da interface do usuário
- Usar cache na automação da interface do usuário