Freigeben über


Übersicht über das Word-Objektmodell

Wenn Sie Word-Lösungen in Visual Studio entwickeln, interagieren Sie mit dem Word-Objektmodell. Dieses Objektmodell besteht aus Klassen und Schnittstellen, die in der primären Interopassembly für Word bereitgestellt werden und im Microsoft.Office.Interop.Word Namespace definiert sind.

Gilt für: Die Informationen in diesem Thema gelten für Projekte auf Dokumentebene und VSTO-Add-In-Projekte für Word. Weitere Informationen finden Sie unter Funktionen verfügbar nach Office-Anwendung und Projekttyp.

Dieses Thema enthält eine kurze Übersicht über das Word-Objektmodell. Ressourcen, in denen Sie mehr über das gesamte Word-Objektmodell erfahren können, finden Sie in der Word-Objektmodelldokumentation.

Informationen zur Verwendung des Word-Objektmodells zum Ausführen bestimmter Aufgaben finden Sie in den folgenden Themen:

Grundlegendes zum Word-Objektmodell

Word stellt Hunderte von Objekten bereit, mit denen Sie interagieren können. Diese Objekte sind in einer Hierarchie angeordnet, die genau auf die Benutzeroberfläche folgt. Oben in der Hierarchie befindet sich das Application Objekt. Dieses Objekt stellt die aktuelle Instanz von Word dar. Das Application Objekt enthält die Document, Selection, Bookmark, und Range Objekte. Jedes dieser Objekte verfügt über viele Methoden und Eigenschaften, auf die Sie zugreifen können, um das Objekt zu bearbeiten und zu interagieren.

Die folgende Abbildung zeigt eine Ansicht dieser Objekte in der Hierarchie des Word-Objektmodells.

Word-Objektmodellgrafik

Auf den ersten Blick scheinen sich Objekte zu überlappen. Beispielsweise sind die Document Elemente und Selection Objekte elemente des Application Objekts, aber das Document Objekt ist auch ein Element des Selection Objekts. Sowohl die Document- als auch die Selection-Objekte enthalten Bookmark- und Range-Objekte. Die Überlappung ist vorhanden, da es mehrere Möglichkeiten gibt, auf denselben Objekttyp zuzugreifen. Beispielsweise wenden Sie die Formatierung auf ein Range Objekt an. Sie können jedoch auf den Bereich der aktuellen Auswahl, eines bestimmten Absatzes, eines Abschnitts oder des gesamten Dokuments zugreifen.

In den folgenden Abschnitten werden kurz die Objekte der obersten Ebene und ihre Interaktion miteinander beschrieben. Zu diesen Objekten gehören die folgenden fünf:

  • Anwendungsobjekt

  • Document-Objekt

  • Auswahlobjekt

  • Range-Objekt

  • Bookmark-Objekt

    Neben dem Word-Objektmodell stellen Office-Projekte in Visual Studio Hostelemente und Hoststeuerelemente bereit, die einige Objekte im Word-Objektmodell erweitern. Hostelemente und Hoststeuerelemente verhalten sich wie die Word-Objekte, die sie erweitern, und bieten zusätzliche Funktionalitäten wie Datenbindungsmöglichkeiten und zusätzliche Ereignisse. Weitere Informationen finden Sie unter Automatisieren von Word mithilfe erweiterter Objekte und Hostelemente und Hoststeuerelemente ( Übersicht).

Anwendungsobjekt

Das Application Objekt stellt die Word-Anwendung dar und ist das übergeordnete Element aller anderen Objekte. Ihre Mitglieder betreffen Word im Ganzen. Sie können dessen Eigenschaften und Methoden verwenden, um die Word-Umgebung zu steuern.

In VSTO-Add-In-Projekten können Sie auf das ThisAddIn-Objekt mit dem Application-Feld der Application-Klasse zugreifen. Weitere Informationen finden Sie unter Programm-VSTO-Add-Ins.

In Projekten auf Dokument-Ebene können Sie auf das ThisDocument-Objekt zugreifen, indem Sie die Eigenschaft Application der Klasse Application verwenden.

Document-Objekt

Das Document Objekt ist für die Programmierung von Word von zentraler Bedeutung. Es stellt ein Dokument und seinen gesamten Inhalt dar. Wenn Sie ein Dokument öffnen oder ein neues Dokument erstellen, erstellen Sie ein neues Document Objekt, das der Documents Auflistung des Application Objekts hinzugefügt wird. Das Dokument, das den Fokus hat, wird als aktives Dokument bezeichnet. Sie wird durch die ActiveDocument Eigenschaft des Application Objekts dargestellt.

Die Office-Entwicklungstools in Visual Studio erweitern das Document-Objekt, indem sie den Document-Typ bereitstellen. Dieser Typ ist ein Hostelement , das Ihnen Zugriff auf alle Features eines Document Objekts bietet und zusätzliche Ereignisse und die Möglichkeit zum Hinzufügen verwalteter Steuerelemente hinzufügt.

Wenn Sie ein Dokumentebene-Projekt erstellen, können Sie, indem Sie die generierte ThisDocument-Klasse in Ihrem Projekt verwenden, auf Document-Mitglieder zugreifen. Sie können auf Mitglieder des Document-Hostelements zugreifen, indem Sie die Schlüsselwörter Me oder this im Code der ThisDocument-Klasse verwenden oder Globals.ThisDocument im Code außerhalb der ThisDocument-Klasse nutzen. Weitere Informationen finden Sie unter Dokumentenanpassungen auf Programmebene. Wenn Sie beispielsweise den ersten Absatz im Dokument markieren möchten, verwenden Sie den folgenden Code.

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

In VSTO-Add-In-Projekten können Sie Document Hostelemente zur Laufzeit generieren. Sie können das generierte Hostelement verwenden, um dem zugeordneten Dokument Steuerelemente hinzuzufügen. Weitere Informationen finden Sie unter Erweitern von Word-Dokumenten und Excel-Arbeitsmappen in VSTO-Add-Ins zur Laufzeit.

Auswahlobjekt

Das Selection Objekt stellt den aktuell ausgewählten Bereich dar. Wenn Sie einen Vorgang auf der Word-Benutzeroberfläche ausführen, z. B. Text fett formatieren, wählen oder markieren Sie den Text aus, bevor Sie die Formatierung anwenden. Das Selection Objekt ist immer in einem Dokument vorhanden. Wenn nichts ausgewählt ist, stellt sie die Einfügemarke dar. Darüber hinaus kann eine Auswahl mehrere Textblöcke umfassen, die nicht zusammenhängend sind.

Range-Objekt

Das Range Objekt stellt einen zusammenhängenden Bereich in einem Dokument dar und wird durch eine Anfangszeichenposition und eine Endzeichenposition definiert. Sie sind nicht auf ein einzelnes Range Objekt beschränkt. Sie können mehrere Range Objekte im selben Dokument definieren. Ein Range Objekt weist die folgenden Merkmale auf:

  • Sie kann allein aus der Einfügemarke, einem Textbereich oder dem gesamten Dokument bestehen.

  • Sie enthält nichtdruckende Zeichen wie Leerzeichen, Tabstoppzeichen und Absatzmarken.

  • Dabei kann es sich um den bereich, der durch die aktuelle Auswahl dargestellt wird, oder es kann einen Bereich darstellen, der sich von der aktuellen Auswahl unterscheidet.

  • Es ist nicht in einem Dokument sichtbar, im Gegensatz zu einer Auswahl, die immer sichtbar ist.

  • Sie wird nicht mit einem Dokument gespeichert und ist nur vorhanden, wenn der Code ausgeführt wird.

    Wenn Sie Text am Ende eines Bereichs einfügen, erweitert Word den Bereich automatisch, um den eingefügten Text einzuschließen.

Objekte zur Inhaltssteuerung

Eine ContentControl bietet Ihnen eine Möglichkeit, die Eingabe und Präsentation von Text und anderen Inhaltsarten in Word-Dokumenten zu steuern. Eine ContentControl kann verschiedene Benutzeroberflächentypen anzeigen, die für die Verwendung in Word-Dokumenten optimiert sind, z. B. ein Rich-Text-Steuerelement, eine Datumsauswahl oder ein Kombinationsfeld. Sie können auch ein ContentControl verwenden, um zu verhindern, dass Benutzer Abschnitte des Dokuments oder der Vorlage bearbeiten.

Visual Studio erweitert das ContentControl Objekt auf mehrere verschiedene Hoststeuerelemente. Während das ContentControl Objekt eine der verschiedenen Ui-Typen anzeigen kann, die für Inhaltssteuerelemente verfügbar sind, stellt Visual Studio für jedes Inhaltssteuerelement einen anderen Typ bereit. Sie können z. B. ein RichTextContentControl Rich-Text-Steuerelement erstellen oder eine DatePickerContentControl Datumsauswahl erstellen. Diese Hoststeuerelemente verhalten sich wie die systemeigene ContentControl, verfügen jedoch über zusätzliche Ereignisse und Datenbindungsfunktionen. Weitere Informationen finden Sie unter Inhaltssteuerelemente.

Bookmark-Objekt

Das Bookmark Objekt stellt einen zusammenhängenden Bereich in einem Dokument dar, wobei sowohl eine Anfangsposition als auch eine Endposition vorhanden sind. Sie können Textmarken verwenden, um eine Position in einem Dokument oder als Container für Text in einem Dokument zu markieren. Ein Bookmark Objekt kann aus der Einfügemarke bestehen oder die Größe des gesamten Dokuments haben. A Bookmark weist die folgenden Merkmale auf, die es vom Range Objekt unterscheiden:

  • Sie können die Textmarke im Entwurfsmodus benennen.

  • Bookmark Objekte werden mit dem Dokument gespeichert und daher nicht gelöscht, wenn der Code nicht mehr ausgeführt wird oder das Dokument geschlossen wird.

  • Lesezeichen können ausgeblendet oder sichtbar gemacht werden, indem die ShowBookmarks Eigenschaft des View Objekts auf "false" oder "true" festgelegt wird.

    Visual Studio erweitert das Bookmark Objekt, indem das Bookmark Hoststeuerelement bereitgestellt wird. Das Bookmark Hoststeuerelement verhält sich wie ein natives Bookmark-Steuerelement, bietet jedoch zusätzliche Ereignisse und Datenbindungsfunktionen. Sie können Daten auf dieselbe Weise an ein Textmarkensteuerelement in einem Dokument binden, wie Sie Daten an ein Textfeld-Steuerelement in einem Windows Form binden. Weitere Informationen finden Sie unter Lesezeichen-Steuerelement.

Verwenden der Word-Objektmodelldokumentation

Vollständige Informationen zum Word-Objektmodell finden Sie in der Referenz zur primären Interopassembly (PIA) von Word und in der VBA-Objektmodellreferenz (Visual Basic for Applications).

Referenz zur primären Interop-Assembly

In der Word PIA-Referenzdokumentation werden die Typen in der primären Interop-Assembly für Word beschrieben. Diese Dokumentation steht am folgenden Speicherort zur Verfügung: Referenz zur primären Interopassembly in Word 2010.

Weitere Informationen zum Entwurf der Word-PIA, z. B. die Unterschiede zwischen Klassen und Schnittstellen in der PIA und die Implementierung von Ereignissen in der PIA, finden Sie unter Übersicht über Klassen und Schnittstellen in den primären Interopassemblys von Office.

VBA-Objektmodellreferenz

Die VBA-Objektmodellreferenz dokumentiert das Word-Objektmodell, wie es im VBA-Code zur Verfügung steht. Weitere Informationen finden Sie in der Word 2010-Objektmodellreferenz.

Alle Objekte und Elemente in der VBA-Objektmodellreferenz entsprechen Typen und Membern in der Word-PIA. Beispielsweise entspricht das Document-Objekt im VBA-Objektmodellverweis dem Document Objekt in der Word-PIA. Obwohl die VBA-Objektmodellreferenz Codebeispiele für die meisten Eigenschaften, Methoden und Ereignisse bereitstellt, müssen Sie den VBA-Code in dieser Referenz in Visual Basic oder Visual C# übersetzen, wenn Sie sie in einem Word-Projekt verwenden möchten, das Sie mit Visual Studio erstellen.