Partilhar via


Padrão de controle ObjectModel

Descreve diretrizes e convenções para implementar IObjectModelProvider, incluindo informações sobre métodos. O padrão de controle ObjectModel é usado para expor um ponteiro para o modelo de objeto subjacente de um documento.

Muitos aplicativos implementam modelos de objeto avançados que agregam valor além do que a Automação da Interface do Usuário da Microsoft oferece. Esse padrão de controle permite que um cliente navegue de um elemento de automação da interface do usuário para o modelo de objeto subjacente.

Este tópico contém as seguintes seções.

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

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

  • O métodoIObjectModelProvider::GetUnderlyingObjectModel deve retornar um ponteiro para o objeto que esteja o mais próximo possível do elemento da interface do usuário de origem. Por exemplo, em um navegador da Web, um provedor de automação da interface do usuário para um único elemento deve retornar um ponteiro de modelo de objeto para o elemento. Retornar um ponteiro de modelo de objeto para a raiz do documento seria muito menos útil.
  • Espera-se que o cliente do padrão de controle ObjectModel tenha o IID para a interface que está procurando, e é por isso que é suficiente retornar um ponteiroIUnknownsimples.
  • Como a Automação da Interface do Usuário controla o ponteiro para o processo do cliente, o provedor deve esperar que o cliente acesse o modelo de objeto usando práticas padrão de COM (Component Object Model).

Membros necessários para IObjectModelProvider

O método a seguir é necessário para implementar o IObjectModelProvider interface.

Membros obrigatórios Tipo de membro Observações
GetUnderlyingObjectModel Método Retorna um ponteiro COM para o modelo de objeto subjacente. Espera-se que o cliente chame o método IUnknown::QueryInterface para recuperar ponteiros de modelo de objeto específicos.

 

Esse padrão de controle não tem eventos associados.

tipos de controle e seus padrões de controle suportados

Visão geral dos padrões de controle de automação da interface do do usuário

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