Ü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 und im Namespace Microsoft.Office.Interop.Word definiert werden.

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 features available by Office-App lication and project type.

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 für bestimmte Aufgaben finden Sie unter den folgenden Themen:

Grundlegendes zum Word-Objektmodell

Word stellt Hunderte von Objekten bereit, mit denen Sie interagieren können. Diese Objekte werden in einer Hierarchie angeordnet, die eng an die Benutzeroberfläche angelehnt ist. An der Spitze dieser 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 zahlreiche Methoden und Eigenschaften, auf die Sie zum Bearbeiten des Objekts und Interagieren mit dem Objekt zugreifen können.

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

Word Object Model graphic

Auf den ersten Blick scheinen sich die Objekte zu überlappen. Die Document - und Selection -Objekte sind beide Elemente des Application -Objekts, das Document -Objekt ist jedoch auch ein Element des Selection -Objekts. Sowohl das Document - als auch das Selection -Objekt enthält Bookmark - und Range -Objekte. Die Überlappung ist vorhanden, weil es mehrere Möglichkeiten gibt, auf den gleichen Typ von Objekt zuzugreifen. Angenommen, Sie wenden Formatierungen auf ein Range -Objekt an. Sie möchten jedoch ggf. auf den Bereich der aktuellen Auswahl, eines bestimmten Absatzes, eines Abschnitts oder auf das gesamte Dokument zugreifen.

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

  • Anwendungsobjekt

  • Document-Objekt

  • Selection-Objekt

  • Range-Objekt

  • Bookmark-Objekt

    Zusätzlich zum Word-Objektmodell stellen Office-Projekte in Visual Studio Hostelemente und Hoststeuerelemente bereit, die im Word-Objektmodell einige Objekte erweitern. Hostelemente und Hoststeuerelemente verhalten sich wie die Word-Objekte, die sie erweitern, verfügen jedoch auch über zusätzliche Funktionen, z. B. Datenbindungsfunktionen 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. Seine Elemente gelten normalerweise für Word als Ganzes. Sie können seine Eigenschaften und Methoden zum Steuern der Word-Umgebung verwenden.

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

In Projekten auf Dokumentebene können Sie auf das Application -Objekt mithilfe der Eigenschaft Application der Klasse ThisDocument zugreifen.

Document-Objekt

Das Document -Objekt ist für die Programmierung von Word wesentlich. 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 Auflistung Documents des Application -Objekts hinzugefügt wird. Das Dokument, das den Fokus besitzt, wird als das aktive Dokument bezeichnet. Es wird durch die Eigenschaft ActiveDocument 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 den Zugriff auf alle Features eines Document -Objekts ermöglicht und zusätzliche Ereignisse sowie die Möglichkeit zum Hinzufügen verwalteter Steuerelemente hinzufügt.

Wenn Sie ein Projekt auf Dokumentebene erstellen, können Sie auf Document -Elemente mithilfe der generierten Klasse ThisDocument in Ihrem Projekt zugreifen. Können Sie auf Elemente des Document -Hostelements mithilfe der Schlüsselwörter Me oder this aus Code in der Klasse ThisDocument oder mithilfe von Globals.ThisDocument aus Code außerhalb der Klasse ThisDocument -Objekt zugreifen. Weitere Informationen finden Sie unter Anpassungen auf Dokumentebene auf Programmebene. Zum Auswählen des ersten Absatzes im Dokument verwenden Sie beispielsweise 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 zum Hinzufügen von Steuerelementen zum zugehörigen Dokument verwenden. Weitere Informationen finden Sie unter Erweitern von Word-Dokumenten und Excel-Arbeitsmappen in VSTO-Add-Ins zur Laufzeit.

Selection-Objekt

Das Selection -Objekt stellt den Bereich dar, der zurzeit ausgewählt ist. Beim Ausführen eines Vorgangs in der Word-Benutzeroberfläche (z. B. Fettformatieren von Text) wählen Sie den Text aus oder markieren ihn, und wenden dann die Formatierung an. Das Selection -Objekt ist in einem Dokument immer vorhanden. Wenn nichts ausgewählt ist, stellt es 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 Startzeichenposition und eine Endzeichenposition definiert. Es besteht keine Einschränkung auf ein einzelnes Range -Objekt. Sie können mehrere Range -Objekte im gleichen Dokument definieren. Ein Range -Objekt weist folgende Merkmale auf:

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

  • Es enthält nicht druckbare Zeichen wie z. B. Leerzeichen, Tabstoppzeichen und Absatzmarken.

  • Es kann sich um den Bereich handeln, der die aktuelle Auswahl dargestellt, oder es kann einen anderen Bereich als die aktuelle Auswahl darstellen.

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

  • Es wird nicht mit dem Dokument gespeichert und existiert nur, während der Code ausgeführt wird.

    Wenn Sie am Ende eines Bereichs Text einfügen, erweitert Word den Bereich automatisch so, dass der eingefügte Text berücksichtigt wird.

Inhaltssteuerelementobjekte

Ein ContentControl -Objekt bietet eine Möglichkeit, die Eingabe und die Darstellung von Text und anderen Typen von Inhalt in Word-Dokumenten zu steuern. Ein ContentControl -Objekt kann verschiedene Typen von Benutzeroberflächen 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 -Objekt verwenden, um zu verhindern, dass Benutzer Abschnitte des Dokuments oder der Vorlage bearbeiten können.

Visual Studio erweitert das ContentControl -Objekt in mehrere unterschiedliche Hoststeuerelemente. Während das ContentControl -Objekt jeden der verschiedenen Typen von Benutzeroberflächen anzeigen kann, die für Inhaltssteuerelemente verfügbar sind, stellt Visual Studio einen anderen Typ für jedes Inhaltssteuerelement bereit. Beispielsweise können Sie ein RichTextContentControl -Objekt zum Erstellen eines Rich-Text-Steuerelements oder ein DatePickerContentControl -Objekt zum Erstellen einer Datumsauswahl verwenden. Diese Hoststeuerelemente verhalten sich wie das systemeigene ContentControl-Objekt, 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 mit einer Anfangsposition und einer Endposition dar. Sie können Lesezeichen verwenden, um eine Position in einem Dokument zu markieren, oder als einen Container für Text in einem Dokument. Ein Bookmark -Objekt kann aus der Einfügemarke bestehen oder so groß wie das gesamte Dokument sein. Ein Bookmark -Objekt weist die folgenden Merkmale auf, die es vom Range -Objekt unterscheiden:

  • Sie können das Lesezeichen zur Entwurfszeit benennen.

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

  • Lesezeichen können ausgeblendet oder sichtbar gemacht werden, indem die Eigenschaft ShowBookmarks der Klasse View -Objekts auf false oder true.

    Visual Studio erweitert das Bookmark -Objekt durch Bereitstellen des Bookmark -Hoststeuerelements. Das Bookmark -Hoststeuerelement verhält sich wie ein systemeigenes Bookmark-Objekt, stellt jedoch zusätzliche Ereignisse und Datenbindungsfunktionen bereit. Sie können Daten an ein Bookmark-Steuerelement für ein Dokument auf die gleiche Weise binden wie Daten an ein Textfeld-Steuerelement für Windows Forms. Weitere Informationen finden Sie unter Bookmark-Steuerelement.

Verwenden der Word-Objektmodelldokumentation

Ausführliche Informationen zum Word-Objektmodell finden Sie in der Referenz für die primäre Interopassembly (PIA) und der VBA-Objektmodellreferenz (Visual Basic for Applications).

Referenz zur primären Interopassembly

In der Referenzdokumentation für die Word-PIA werden die Typen in der primären Interopassembly 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, das für VBA-Code (Visual Basic for Applications) zur Verfügung gestellt wird. Weitere Informationen finden Sie in der Word 2010-Objektmodellreferenz.

Alle Objekte und Elemente in der VBA-Objektmodellreferenz entsprechen Typen und Elementen 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 enthält, müssen Sie den VBA-Code in dieser Referenz in Visual Basic oder Visual C# übersetzen, wenn Sie ihn in einem mit Visual Studio erstellten Word-Projekt verwenden möchten.