Markieren Sie das Kontrollkästchen Englisch, um die englische Version dieses Artikels anzuzeigen. Sie können den englischen Text auch in einem Popup-Fenster einblenden, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Ü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.

Betrifft: Die Informationen in diesem Thema betreffen Projekte auf Dokumentebene und VSTO-Add-In-Projekte für Word. Weitere Informationen finden Sie unter Verfügbare Funktionen nach Office-Anwendung und Projekttyp.

Dieses Thema enthält eine kurze Übersicht über das Word-Objektmodell. Informationen zu Ressourcen, in denen Sie mehr über das gesamte Word-Objektmodell erfahren, finden Sie unter Verwenden der Dokumentation zum Word-Objektmodell.

Informationen zur Verwendung des Word-Objektmodells für bestimmte Aufgaben finden Sie unter den folgenden Themen:

Word stellt Hunderte von Objekten bereit, mit denen Sie interagieren können. Diese Objekte werden in einer Hierarchie organisiert, 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.

Grafik zum Word-Objektmodell

Abstraktion zum Word-Objektmodell

Auf den ersten Blick scheinen Objekte mehrfach definiert zu sein. 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:

  • Application-Objekt

  • 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 von erweiterten Objekten und Übersicht über Hostelemente und Hoststeuerelemente.

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 ThisAddIn-Klasse auf das Application-Objekt zugreifen. Weitere Informationen finden Sie unter Programmieren von VSTO-Add-Ins.

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

Das Microsoft.Office.Interop.Word.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 Microsoft.Office.Interop.Word.Document-Objekt, das der Auflistung T:Microsoft.Office.Interop.Word.Documents des Application-Objekts hinzugefügt wird. Das Dokument, das den Fokus besitzt, wird als das aktive Dokument bezeichnet. Es wird durch die Eigenschaft P:Microsoft.Office.Interop.Word._Application.ActiveDocument des Application-Objekts dargestellt.

Die Office-Entwicklungstools in Visual Studio erweitern das Microsoft.Office.Interop.Word.Document-Objekt, indem sie den Microsoft.Office.Tools.Word.Document-Typ bereitstellen. Dieser Typ ist ein Hostelement, das Ihnen den Zugriff auf alle Features eines Microsoft.Office.Interop.Word.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 Microsoft.Office.Tools.Word.Document-Elemente mithilfe der generierten Klasse ThisDocument in Ihrem Projekt zugreifen. Können Sie auf Elemente des Microsoft.Office.Tools.Word.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 zugreifen. Weitere Informationen finden Sie unter Programmieren von Anpassungen auf Dokumentebene. 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 Microsoft.Office.Tools.Word.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.

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.

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.

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

Visual Studio erweitert das Microsoft.Office.Interop.Word.ContentControl-Objekt in mehrere unterschiedliche Hoststeuerelemente. Während das Microsoft.Office.Interop.Word.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 Microsoft.Office.Tools.Word.RichTextContentControl-Objekt zum Erstellen eines Rich-Text-Steuerelements oder ein Microsoft.Office.Tools.Word.DatePickerContentControl-Objekt zum Erstellen einer Datumsauswahl verwenden. Diese Hoststeuerelemente verhalten sich wie das systemeigene Microsoft.Office.Interop.Word.ContentControl-Objekt, verfügen jedoch über zusätzliche Ereignisse und Datenbindungsfunktionen. Weitere Informationen finden Sie unter Inhaltssteuerelemente.

Das Microsoft.Office.Interop.Word.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 Microsoft.Office.Interop.Word.Bookmark-Objekt kann aus der Einfügemarke bestehen oder so groß wie das gesamte Dokument sein. Ein Microsoft.Office.Interop.Word.Bookmark-Objekt weist die folgenden Merkmale auf, die es vom Range-Objekt unterscheiden:

Visual Studio erweitert das Microsoft.Office.Interop.Word.Bookmark-Objekt durch Bereitstellen des Microsoft.Office.Tools.Word.Bookmark-Hoststeuerelements. Das Microsoft.Office.Tools.Word.Bookmark-Hoststeuerelement verhält sich wie ein systemeigenes Microsoft.Office.Interop.Word.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.

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).

In der Referenzdokumentation für die Word-PIA werden die Typen in der primären Interopassembly für Word beschrieben. Diese Dokumentation ist unter Referenz für die primäre Interopassembly für Word 2010 verfügbar.

Weitere Informationen zum Entwurf der Word-PIA (z. B. zu Unterschieden zwischen Klassen und Schnittstellen in der PIA und zur Implementierung von Ereignissen in der PIA) finden Sie in der Übersicht über Klassen und Schnittstellen in den primären Interopassemblys von Office.

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 unter Objektmodell (VBA-Referenz für Word).

Alle Objekte und Elemente in der VBA-Objektmodellreferenz entsprechen Typen und Elementen in der Word-PIA. Das Document-Objekt in der VBA-Objektmodellreferenz entspricht z. B. dem Microsoft.Office.Interop.Word.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.

Anzeigen: