Share via


Visão geral do modelo de objeto do Word

Quando você desenvolve soluções do Word no Visual Studio, você interage com o modelo de objeto do Word. Esse modelo de objeto consiste em classes e interfaces que são fornecidas no assembly de interoperabilidade primário do Word e são definidas no Microsoft.Office.Interop.Word namespace.

Aplica-se a: As informações neste tópico se aplicam a projetos de nível de documento e projetos de suplemento VSTO para Word. Para obter mais informações, consulte Recursos disponíveis por aplicativo e tipo de projeto do Office.

Este tópico fornece uma breve visão geral do modelo de objeto do Word. Para obter recursos onde você pode aprender mais sobre todo o modelo de objeto do Word, consulte Usar a documentação do modelo de objeto do Word.

Para obter informações sobre como usar o modelo de objeto do Word para executar tarefas específicas, consulte os seguintes tópicos:

Compreender o modelo de objeto do Word

O Word fornece centenas de objetos com os quais você pode interagir. Esses objetos são organizados em uma hierarquia que acompanha de perto a interface do usuário. No topo da hierarquia está o Application objeto. Este objeto representa a instância atual do Word. O Application objeto contém os Documentobjetos , Selection, Bookmarke Range . Cada um desses objetos tem muitos métodos e propriedades que você pode acessar para manipular e interagir com o objeto.

A ilustração a seguir mostra um modo de exibição desses objetos na hierarquia do modelo de objeto do Word.

Word Object Model graphic

À primeira vista, os objetos parecem se sobrepor. Por exemplo, os Document objetos e Selection são membros do objeto, mas o Document objeto também é um membro do ApplicationSelection objeto. Ambos os Document objetos e Selection contêm Bookmark e Range objetos. A sobreposição existe porque há várias maneiras de acessar o mesmo tipo de objeto. Por exemplo, você aplica formatação a um objeto, mas talvez queira acessar o intervalo da seleção atual, de um Range parágrafo específico, de uma seção ou do documento inteiro.

As seções a seguir descrevem brevemente os objetos de nível superior e como eles interagem entre si. Esses objetos incluem os cinco seguintes:

  • Objeto de aplicativo

  • Objeto de documento

  • Objeto de seleção

  • Objeto de intervalo

  • Objeto Bookmark

    Além do modelo de objeto do Word, os projetos do Office no Visual Studio fornecem itens de host e controles de host que estendem alguns objetos no modelo de objeto do Word. Os itens de host e os controles de host se comportam como os objetos do Word que estendem, mas também têm funcionalidade adicional, como recursos de vinculação de dados e eventos extras. Para obter mais informações, consulte Automatizar o Word usando objetos estendidos e Visão geral sobre itens de host e controles de host.

Objeto de aplicativo

O Application objeto representa o aplicativo Word e é o pai de todos os outros objetos. Seus membros geralmente se aplicam ao Word como um todo. Você pode usar suas propriedades e métodos para controlar o ambiente do Word.

Em projetos de suplemento VSTO, você pode acessar o Application objeto usando o ApplicationThisAddIn campo da classe. Para obter mais informações, consulte Suplementos do programa VSTO.

Em projetos de nível de documento, você pode acessar o Application objeto usando a ApplicationThisDocument propriedade da classe.

Objeto de documento

O Document objeto é central para a programação do Word. Representa um documento e todo o seu conteúdo. Ao abrir um documento ou criar um novo documento, você cria um novo Document objeto, que é adicionado à Documents coleção do Application objeto. O documento que tem o foco é chamado de documento ativo. Ele é representado pela ActiveDocument propriedade do Application objeto.

As ferramentas de desenvolvimento do Office no Visual Studio estendem o objeto fornecendo o DocumentDocument tipo. Esse tipo é um item de host que lhe dá acesso a todos os recursos de um Document objeto e adiciona eventos adicionais e a capacidade de adicionar controles gerenciados.

Ao criar um projeto de nível de documento, você pode acessar Document membros usando a classe gerada ThisDocument em seu projeto. Você pode acessar membros do item de Document host usando as palavras-chave Me ou this do código na ThisDocument classe ou usando Globals.ThisDocument o código fora da ThisDocument classe. Para obter mais informações, consulte Personalizações em nível de documento do programa. Por exemplo, para selecionar o primeiro parágrafo no documento, use o código a seguir.

this.Paragraphs[1].Range.Select();

Em projetos de suplemento VSTO, você pode gerar Document itens de host em tempo de execução. Você pode usar o item de host gerado para adicionar controles ao documento associado. Para obter mais informações, consulte Estender documentos do Word e pastas de trabalho do Excel em suplementos VSTO em tempo de execução.

Objeto de seleção

O Selection objeto representa a área que está selecionada no momento. Ao executar uma operação na interface do usuário do Word, como negrito de texto, você seleciona ou realça o texto e aplica a formatação. O Selection objeto está sempre presente em um documento. Se nada for selecionado, ele representará o ponto de inserção. Além disso, uma seleção pode abranger vários blocos de texto que não são contíguos.

Objeto de intervalo

O Range objeto representa uma área contígua em um documento e é definido por uma posição de caractere inicial e uma posição de caractere final. Você não está limitado a um único Range objeto. Você pode definir vários Range objetos no mesmo documento. Um Range objeto tem as seguintes características:

  • Ele pode consistir apenas no ponto de inserção, em um intervalo de texto ou no documento inteiro.

  • Ele inclui caracteres não imprimíveis, como espaços, caracteres de tabulação e marcas de parágrafo.

  • Pode ser a área representada pela seleção atual ou pode representar uma área diferente da seleção atual.

  • Ele não é visível em um documento, ao contrário de uma seleção, que é sempre visível.

  • Ele não é salvo com um documento e existe apenas enquanto o código está em execução.

    Quando você insere texto no final de um intervalo, o Word expande automaticamente o intervalo para incluir o texto inserido.

Objetos de controle de conteúdo

A ContentControl fornece uma maneira de controlar a entrada e a apresentação de texto e outros tipos de conteúdo em documentos do Word. Um ContentControl pode exibir vários tipos diferentes de interface do usuário que são otimizados para uso em documentos do Word, como um controle rich text, um seletor de data ou uma caixa de combinação. Você também pode usar um ContentControl para impedir que os usuários editem seções do documento ou modelo.

Visual Studio estende o ContentControl objeto em vários controles de host diferentes. Considerando que o objeto pode exibir qualquer um dos diferentes tipos de interface do usuário que estão disponíveis para controles de conteúdo, Visual ContentControl Studio fornece um tipo diferente para cada controle de conteúdo. Por exemplo, você pode usar um para criar um controle rich text ou pode usar um para criar um RichTextContentControlDatePickerContentControl seletor de data. Esses controles de host se comportam como o nativo ContentControl, mas eles têm eventos adicionais e recursos de vinculação de dados. Para obter mais informações, consulte Controles de conteúdo.

Objeto Bookmark

O Bookmark objeto representa uma área contígua em um documento, com uma posição inicial e uma posição final. Você pode usar marcadores para marcar um local em um documento ou como um contêiner para texto em um documento. Um Bookmark objeto pode consistir no ponto de inserção ou ser tão grande quanto o documento inteiro. A Bookmark tem as seguintes características que o diferenciam do Range objeto:

  • Você pode nomear o marcador em tempo de design.

  • Bookmark Os objetos são salvos com o documento e, portanto, não são excluídos quando o código para de ser executado ou o documento é fechado.

  • Os marcadores podem ser ocultos ou tornados visíveis definindo a ShowBookmarksView propriedade do objeto como false ou true.

    Visual Studio estende o objeto fornecendo o BookmarkBookmark controle de host. O Bookmark controle de host se comporta como um nativo Bookmark, mas tem eventos adicionais e recursos de vinculação de dados. Você pode vincular dados a um controle de indicador em um documento da mesma forma que vincular dados a um controle de caixa de texto em um Windows Form. Para obter mais informações, consulte Controle de marcador.

Usar a documentação do modelo de objeto do Word

Para obter informações completas sobre o modelo de objeto do Word, você pode consultar a referência de assembly de interoperabilidade primária (PIA) do Word e a referência de modelo de objeto do Visual Basic for Applications (VBA).

Referência de assembly de interoperabilidade primária

A documentação de referência do Word PIA descreve os tipos no assembly de interoperabilidade primário para o Word. Esta documentação está disponível no seguinte local: Referência de assembly de interoperabilidade primária do Word 2010.

Para obter mais informações sobre o design do Word PIA, como as diferenças entre classes e interfaces no PIA e como os eventos no PIA são implementados, consulte Visão geral de classes e interfaces nos assemblies de interoperabilidade primária do Office.

Referência do modelo de objeto VBA

A referência do modelo de objeto VBA documenta o modelo de objeto do Word como ele é exposto ao código VBA. Para obter mais informações, consulte Referência de modelo de objeto do Word 2010.

Todos os objetos e membros na referência de modelo de objeto VBA correspondem a tipos e membros no Word PIA. Por exemplo, o objeto Document na referência do modelo de objeto VBA corresponde ao Document objeto no Word PIA. Embora a referência de modelo de objeto VBA forneça exemplos de código para a maioria das propriedades, métodos e eventos, você deve traduzir o código VBA nesta referência para Visual Basic ou Visual C# se você deseja usá-los em um projeto do Word que você cria usando o Visual Studio.