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

Inhaltssteuerelemente

 

Inhaltssteuerelemente bieten Ihnen eine Möglichkeit, Dokumente und Vorlagen zu entwerfen, die die folgenden Features aufweisen:

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.

Link zu Video Eine entsprechende Videodemo finden Sie unter Binden von Daten an Word 2007-Inhaltssteuerelemente mit den Visual Studio-Tools für Office System (3.0).

Inhaltssteuerelemente stellen eine Benutzeroberfläche bereit, die für Benutzereingaben und Druck optimiert ist. Wenn Sie einem Dokument ein Inhaltssteuerelement hinzufügen, wird das Steuerelement durch einen Rahmen, einen Titel und temporären Text identifiziert, der Anweisungen für den Benutzer bereitstellen kann. Der Rahmen und der Titel des Steuerelements werden nicht in gedruckten Versionen des Dokuments angezeigt.

Wenn Sie z. B. möchten, dass der Benutzer ein Datum in einem Abschnitt Ihres Dokuments eingibt, können Sie dem Dokument ein Datumsauswahl-Inhaltssteuerelement hinzufügen. Wenn Benutzer auf das Steuerelement klicken, wird die Datumsauswahl-Standardbenutzeroberfläche angezeigt. Sie können die Eigenschaften des Steuerelements auch so festlegen, dass der regionale Kalender festgelegt wird, der angezeigt wird, und Sie können das Datumsformat angeben. Nachdem der Benutzer ein Datum ausgewählt hat, wird die Benutzeroberfläche des Steuerelements ausgeblendet, und nur das Datum wird angezeigt, wenn der Benutzer das Dokument druckt.

Inhaltssteuerelemente unterstützen Sie auch bei den folgenden Aufgaben:

  • Verhindern, dass Benutzer Teile eines Dokuments bearbeiten oder löschen. Dies ist sinnvoll, wenn Informationen in einem Dokument oder einer Vorlage vorhanden sind, die Benutzer lesen, jedoch nicht bearbeiten können sollen, oder wenn Benutzer Steuerelemente bearbeiten, jedoch nicht löschen dürfen.

  • Binden von Teilen eines Dokuments oder einer Vorlage an Daten. Sie können Inhaltssteuerelementen an Datenbankfelder, verwaltete Objekte in .NET Framework, XML-Elemente, die im Dokument gespeichert sind, und andere Datenquellen binden.

In Projekten auf Dokumentebene können Sie dem Dokument Inhaltssteuerelemente zur Entwurfszeit oder zur Laufzeit hinzufügen. In VSTO-Add-In-Projekten können Sie einem beliebigen geöffneten Dokument zur Laufzeit Inhaltssteuerelemente hinzufügen. Weitere Informationen finden Sie unter Gewusst wie: Hinzufügen von Inhaltssteuerelementen zu Word-Dokumenten.

System_CAPS_noteHinweis

Sie können Inhaltssteuerelemente nur in Dokumenten verwenden, die im Open XML-Format gespeichert werden. Sie können Inhaltssteuerelemente nicht in Dokumenten verwenden, die im Dokumentformat von Word 97 - 2003 (DOC) gespeichert werden.

Es gibt neun verschiedene Typen von Inhaltssteuerelementen, die Sie Dokumenten hinzufügen können. Die meisten der Inhaltssteuerelemente besitzen einen entsprechenden Typ im Namespace Microsoft.Office.Tools.Word. Sie können auch einen generischen Namespace ContentControl verwenden, der eines der verfügbaren Inhaltssteuerelemente darstellen kann. Eine exemplarische Vorgehensweise, die zeigt, wie die einzelnen verfügbaren Inhaltssteuerelemente verwendet werden, finden Sie unter Exemplarische Vorgehensweise: Erstellen einer Vorlage mithilfe von Inhaltssteuerelementen.

Ein Bausteinkatalog ermöglicht Benutzern das Auswählen aus einer Liste von Dokumentbausteinen, die in ein Dokument eingefügt werden sollen. Ein Dokumentbaustein ist ein Inhaltselement, das erstellt wurde, um mehrere Male verwendet zu werden, z. B. eine allgemeine Titelseite, eine formatierte Tabelle oder ein Header . Weitere Informationen finden Sie unter dem BuildingBlockGalleryContentControl-Typ. Weitere Informationen zu Bausteinen finden Sie unter Neuerungen für Entwickler in Word 2007.

Ein Kontrollkästchen stellt eine Benutzeroberfläche zur Verfügung, die einen binären Zustand darstellt: aktiviert oder deaktiviert.

Im Gegensatz zu anderen Typen von Inhaltssteuerelementen stellt die Visual Studio-Tools für Office-Laufzeit keinen bestimmten Typ bereit, der ein Kontrollkästchen-Inhaltssteuerelement darstellt. Es gibt also keinen CheckBoxContentControl-Typ. Sie können jedoch trotzdem ein Kontrollkästchen-Inhaltssteuerelement erstellen, indem Sie ein generisches ContentControl einem Dokument programmgesteuert hinzufügen. Weitere Informationen finden Sie unter Kontrollkästchen-Inhaltssteuerelemente in Word-Projekten.

Ein Kombinationsfeld zeigt eine Liste von Elementen an, die Benutzer auswählen können. Im Gegensatz zu einer Dropdownliste ermöglicht das Kombinationsfeld das Hinzufügen eigener Elemente. Weitere Informationen finden Sie unter dem ComboBoxContentControl-Typ.

Eine Datumsauswahl stellt eine Kalenderbenutzeroberfläche zum Auswählen eines Datums zur Verfügung. Der Kalender wird angezeigt, wenn der Endbenutzer auf den Dropdownpfeil im Steuerelement klickt. Sie können regionale Kalender und verschiedene Datumsformate verwenden. Weitere Informationen finden Sie unter dem DatePickerContentControl-Typ.

Eine Dropdownliste zeigt eine Liste von Elementen an, die Benutzer auswählen können. Im Gegensatz zu einem Kombinationsfeld ermöglicht die Dropdownliste Benutzern nicht das Hinzufügen oder Bearbeiten von Elementen. Weitere Informationen finden Sie unter dem DropDownListContentControl-Typ.

Ein Gruppensteuerelement definiert einen geschützten Bereich eines Dokuments, den Benutzer weder bearbeiten noch löschen können. Ein Gruppensteuerelement kann beliebige Dokumentelemente enthalten, z. B. Text, Tabellen, Grafiken und andere Inhaltssteuerelemente. Weitere Informationen finden Sie unter dem GroupContentControl-Typ.

Ein Bildsteuerelement zeigt ein Bild an. Sie können das Bild zur Entwurfszeit oder zur Laufzeit angeben, oder Benutzer können auf dieses Steuerelement klicken, um ein Bild auszuwählen, das in das Dokument eingefügt werden soll. Weitere Informationen finden Sie unter dem PictureContentControl-Typ.

Ein Rich-Text-Steuerelement enthält Text oder andere Elemente, z. B. Tabellen, Bilder oder andere Inhaltssteuerelemente. Weitere Informationen finden Sie unter dem RichTextContentControl-Typ.

Ein Nur-Text-Steuerelement enthält Text. Ein Nur-Text-Steuerelement kann keine anderen Elemente (z. B. Tabellen, Bilder oder andere Inhaltssteuerelemente) enthalten. Darüber hinaus weist der gesamte Text in einem Nur-Text-Steuerelement die gleiche Formatierung auf. Wenn Sie z. B. ein Wort in einem Satz kursiv formatieren, das sich in einem Nur-Text-Steuerelement befindet, wird der gesamte Text im Steuerelement kursiv formatiert. Weitere Informationen finden Sie unter dem PlainTextContentControl-Typ.

Ein generisches Inhaltssteuerelement ist ein ContentControl-Objekt, das jeden der verfügbaren Typen von Steuerelementen darstellen kann. Sie können ein ContentControl-Objekt so ändern, dass es sich wie ein anderer Typ von Inhaltssteuerelement verhält, indem Sie die Eigenschaft Type verwenden. Wenn Sie z. B. ein ContentControl-Objekt erstellen, das ein Nur-Text-Steuerelement darstellt, können Sie dieses zur Laufzeit so ändern, dass es sich wie ein Kombinationsfeld verhält.

Sie können ContentControl-Objekte nur zur Laufzeit erstellen, nicht zur Entwurfszeit. Weitere Informationen finden Sie unter Gewusst wie: Hinzufügen von Inhaltssteuerelementen zu Word-Dokumenten.

Die meisten Inhaltssteuerelemente verwenden eine Sammlung von Elementen gemeinsam, die Sie verwenden können, um allgemeine Aufgaben auszuführen. In der folgenden Tabelle werden einige der Aufgaben beschrieben, die Sie mithilfe dieser Elemente ausführen können.

Aufgabe:

Vorgehensweise:

Abrufen oder Festlegen des Texts, der im Steuerelement angezeigt wird.

Verwenden Sie die Text-Eigenschaft.

System_CAPS_noteHinweis

Die Typen PictureContentControl und ContentControl verfügen nicht über diese Eigenschaft.

Abrufen oder Festlegen des temporären Texts, der im Steuerelement angezeigt wird, bis ein Benutzer das Steuerelement bearbeitet, das Steuerelement mit Daten aus einer Datenquelle aufgefüllt wird oder der Inhalt des Steuerelements gelöscht wird.

Verwenden Sie die PlaceholderText-Eigenschaft.

System_CAPS_noteHinweis

Der PictureContentControl-Typ verfügt nicht über diese Eigenschaft.

Abrufen oder Festlegen des Titels, der im Rahmen des Inhaltssteuerelements angezeigt wird, wenn der Benutzer darauf klickt.

Verwenden Sie die Title-Eigenschaft.

Automatisches Entfernen des Steuerelement aus dem Dokument, nachdem der Benutzer das Steuerelement bearbeitet hat. (Der Text im Steuerelement verbleibt im Dokument.)

Verwenden Sie die Temporary-Eigenschaft.

Ausführen von Code, wenn der Benutzer im Inhaltssteuerelement klickt oder wenn der Cursor programmgesteuert in das Inhaltssteuerelement verschoben wird.

Behandeln des Entering-Ereignisses des Steuerelements.

Ausführen von Code, wenn der Benutzer außerhalb des Inhaltssteuerelements klickt oder der Cursor programmgesteuert aus dem Inhaltssteuerelement verschoben wird.

Behandeln des Exiting-Ereignisses des Steuerelements.

Ausführen von Code, nachdem das Inhaltssteuerelement als Ergebnis eines Vorgangs "Wiederholen" oder "Rückgängig" dem Dokument hinzugefügt wurde.

Behandeln des Added-Ereignisses des Steuerelements.

Ausführen von Code, kurz bevor das Inhaltssteuerelement aus dem Dokument gelöscht wird.

Behandeln des Deleting-Ereignisses des Steuerelements.

Wenn Sie einen Teil eines Dokuments schützen, verhindern Sie dass Benutzer den Inhalt in diesem Teil des Dokuments ändern oder löschen können. Es gibt mehrere Möglichkeiten, wie Sie Teile eines Dokuments mithilfe von Inhaltssteuerelementen schützen können.

Wenn sich der Bereich, den Sie schützen möchten, innerhalb eines Inhaltssteuerelements befindet, können Sie Eigenschaften des Inhaltssteuerelements verwenden, um zu verhindern, dass Benutzer das Steuerelement bearbeiten oder löschen können:

  • Die Eigenschaft LockContents verhindert, dass Benutzer den Inhalt bearbeiten können.

  • Die Eigenschaft LockContentControl verhindert, dass Benutzer das Steuerelement löschen können.

Wenn sich der Bereich, den Sie schützen möchten, nicht innerhalb eines Inhaltssteuerelements befindet, oder wenn Sie einen Bereich schützen möchten, der Inhaltssteuerelemente und andere Inhaltstypen enthält, können Sie den gesamten Bereich in einem GroupContentControl positionieren. Im Gegensatz zu anderen Inhaltssteuerelementen stellt ein GroupContentControl keine Benutzeroberfläche zur Verfügung, die für den Benutzer sichtbar ist. Sein einziger Zweck besteht darin, einen Bereich zu definieren, den Benutzern nicht bearbeiten können.

System_CAPS_noteHinweis

Wenn Sie ein GroupContentControl erstellen, das eingebettete Inhaltssteuerelemente enthält, sind die eingebetteten Inhaltssteuerelemente nicht automatisch geschützt. Sie müssen die Eigenschaft LockContents jedes eingebetteten Steuerelements verwenden, um zu verhindern, dass Benutzer den jeweiligen Inhalt bearbeiten können.

Weitere Informationen dazu, wie Inhaltssteuerelemente zum Schützen von Teilen von Dokumenten verwendet werden, finden Sie unter Gewusst wie: Schützen von Teilen von Dokumenten mithilfe von Inhaltssteuerelementen.

Sie können Daten in Dokumenten anzeigen, indem Sie ein Inhaltssteuerelement an eine Datenquelle binden. Wenn die Datenquelle aktualisiert wird, spiegelt das Inhaltssteuerelement die Änderungen. Sie können Änderungen auch in der Datenquelle speichern.

Inhaltssteuerelemente stellen die folgenden Datenbindungsoptionen zur Verfügung:

  • Sie können Inhaltssteuerelemente an Datenbankfelder oder verwaltete Objekte binden, indem Sie das gleiche Datenbindungsmodell wie Windows Forms verwenden.

  • Sie können Inhaltssteuerelemente an Elemente in XML-Komponenten (auch als benutzerdefinierte XML-Abschnitte bezeichnet) binden, die im Dokument eingebettet sind.

Eine Übersicht über das Binden von Hoststeuerelementen in Office-Lösungen an Daten finden Sie unter Binden von Daten an Steuerelemente in Office-Projektmappen.

Die meisten Inhaltssteuerelemente unterstützen das einfache Datenbindungsmodell, das Windows Forms verwendet. Einfache Datenbindung bedeutet, dass ein Steuerelement an ein einzelnes Datenelement gebunden ist, z. B. an einen Wert in einer Spalte einer Datentabelle. Weitere Informationen finden Sie unter Datenbindung und Windows Forms.

In Projekten auf Dokumentebene können Sie Daten an Inhaltssteuerelemente binden, indem Sie das Fenster Datenquellen in Visual Studio verwenden. Weitere Informationen zum Hinzufügen von datengebundenen Inhaltssteuerelementen an Dokumente finden Sie unter Gewusst wie: Auffüllen von Dokumenten mit Daten aus einer Datenbank und Gewusst wie: Auffüllen von Dokumenten mit Daten von Objekten.

Die folgende Tabelle listet die Inhaltssteuerelemente auf, die Sie an die einzelnen Datentypen im Fenster Datenquellen binden können.

Datentyp

Standard-Inhaltssteuerelement

Andere Inhaltssteuerelemente, die an diesen Datentyp gebunden werden können

Boolean

Byte

Char

Double

Enum

Guid

Int16

Int32

Int64

SByte

Single

String

TimeSpan

UInt16

UInt32

UInt64

PlainTextContentControl

BuildingBlockGalleryContentControl

ComboBoxContentControl

DatePickerContentControl

RichTextContentControl

DateTime

DatePickerContentControl

BuildingBlockGalleryContentControl

ComboBoxContentControl

PlainTextContentControl

RichTextContentControl

Image

Byte-Array

PictureContentControl

NONE

In Projekten auf Dokumentebene und VSTO-Add-In-Projekten können Sie ein Inhaltssteuerelement programmgesteuert an eine Datenquelle mithilfe der Methode Add der Eigenschaft DataBindings des Steuerelements binden. Wenn Sie so vorgehen, übergeben Sie die Zeichenfolge Text an den Parameter propertyName der Methode Add. Die Eigenschaft Text ist die Standard-Datenbindungseigenschaft von Inhaltssteuerelementen.

Inhaltssteuerelemente unterstützen auch bidirektionale Datenbindung, bei der Änderungen im Steuerelement in der Datenquelle aktualisiert werden. Weitere Informationen finden Sie unter Gewusst wie: Aktualisieren einer Datenquelle mit Daten eines Hoststeuerelements.

System_CAPS_noteHinweis

Inhaltssteuerelemente unterstützen keine komplexe Datenbindung. Wenn Sie ein DropDownListContentControl oder ComboBoxContentControl mithilfe des Windows Forms-Datenmodells an eine Datenquelle binden, wird Benutzern beim Klicken auf das Steuerelement nur ein einziger Wert angezeigt. Wenn Sie diese Steuerelemente an einen Satz von Datenwerten binden möchten, aus denen Benutzer auswählen können, können Sie diese Steuerelemente an Elemente in einem benutzerdefinierten XML-Abschnitt binden.

Sie können einige Inhaltssteuerelemente an Elemente in benutzerdefinierten XML-Abschnitten binden, die im Dokument eingebettet sind. Weitere Informationen zu benutzerdefinierten XML-Abschnitten finden Sie unter Übersicht über benutzerdefinierte XML-Abschnitte.

Wenn Sie ein Inhaltssteuerelement an ein Element in einem benutzerdefinierten XML-Abschnitt binden möchten, verwenden Sie die Eigenschaft XMLMapping des Steuerelements. Im folgenden Codebeispiel wird veranschaulicht, wie ein PlainTextContentControl an das Element Price unter dem Knoten Product in einem benutzerdefinierten XML-Abschnitt gebunden wird, der dem Dokument bereits hinzugefügt wurde.

plainTextContentControl1.XMLMapping.SetMapping("/Product/Price", String.Empty, null);

Eine exemplarische Vorgehensweise, die das Binden von Inhaltssteuerelementen an benutzerdefinierte XML-Abschnitte veranschaulicht, finden Sie unter Exemplarische Vorgehensweise: Binden von Inhaltssteuerelementen an benutzerdefinierte XML-Abschnitte.

Wenn Sie ein Inhaltssteuerelement an einen benutzerdefinierten XML-Abschnitt binden, wird die bidirektionale Datenbindung automatisch aktiviert. Wenn ein Benutzer Text im Steuerelement bearbeitet, werden die entsprechenden XML-Elemente automatisch aktualisiert. Wenn Elementwerte in den benutzerdefinierten XML-Abschnitten geändert werden, zeigen die Inhaltssteuerelemente, die an die XML-Elemente gebunden sind, auf ähnliche Weise die neuen Daten an.

Sie können die folgenden Typen von Inhaltssteuerelementen an benutzerdefinierte XML-Abschnitte binden:

Alle Inhaltssteuerelemente stellen einen Satz von Ereignissen bereit, die Sie behandeln können, um datenbezogene Aufgaben auszuführen. Sie können z. B. überprüfen, ob der Text in einem Steuerelement bestimmte Kriterien erfüllt, bevor die Datenquelle aktualisiert wird. Die folgende Tabelle listet die Inhaltssteuerelement-Ereignisse auf, die mit der Datenbindung zusammenhängen.

Task

event

Ausführen von Code , kurz bevor Word automatisch den Text in einem Inhaltssteuerelement aktualisiert, das an einen benutzerdefinierten XML-Abschnitt gebunden ist.

ContentUpdating

Ausführen von Code, kurz bevor Word automatisch die Daten in einem benutzerdefinierten XML-Abschnitt aktualisiert, der an ein Inhaltssteuerelement gebunden ist (d. h. nachdem sich der Text im Inhaltssteuerelement ändert).

StoreUpdating

Ausführen Ihres eigenen Codes, um den Inhalt des Steuerelements gemäß benutzerdefinierten Kriterien zu überprüfen.

Validating

Ausführen von Code, nachdem der Inhalt des Steuerelements erfolgreich überprüft wurde.

Validated

Wenn Sie Inhaltssteuerelemente in Office-Projekten verwenden, beachten Sie auf die folgenden Einschränkungen.

Viele der Einschränkungen, die Microsoft Office Word-Inhaltssteuerelementen zur Laufzeit auferlegt, werden zur Entwurfszeit nicht erzwungen. Beim Entwerfen der Benutzeroberfläche einer Projektmappe auf Dokumentebene in Visual Studio sollten Sie Inhaltssteuerelemente nur auf eine Weise ändern, die zur Laufzeit unterstützt wird.

Wenn Sie ein Inhaltssteuerelement zur Entwurfszeit auf eine Weise ändern, die das Steuerelement zur Laufzeit nicht unterstützt, warnt Sie der Visual Studio-Designer nicht vor den nicht unterstützten Änderungen. Allerdings wird beim Debuggen oder Ausführen des Projekts oder beim Speichern und erneuten Öffnen des Projekts von Word eine Fehlermeldung angezeigt und die Berechtigung zum Reparieren des Dokuments angefordert. Wenn Sie das Dokument reparieren, entfernt Word alle nicht unterstützten Inhalte und Formatierungen aus dem Steuerelement.

Word verhindert z. B. nicht, dass Sie einem PlainTextContentControl zur Entwurfszeit eine Tabelle hinzufügen. Da PlainTextContentControl-Objekte jedoch zur Laufzeit keine Tabellen enthalten dürfen, zeigt Word eine Fehlermeldung an, wenn das Dokument geöffnet wird.

Beachten Sie außerdem, dass viele Eigenschaften, die das Verhalten von Inhaltssteuerelementen definieren, zur Entwurfszeit keine Auswirkungen besitzen. Wenn Sie z. B. die Eigenschaft LockContents eines Inhaltssteuerelements zur Entwurfszeit auf True festlegen, können Sie im Visual Studio-Designer weiterhin Text im Steuerelement bearbeiten. Diese Eigenschaft verhindert nur, dass Benutzer das Steuerelement zur Laufzeit bearbeiten können.

Inhaltssteuerelemente stellen kein Ereignis zur Verfügung, das ausgelöst wird, wenn der Benutzer Text oder andere Elemente im Steuerelement ändert. Es ist z. B. kein Ereignis vorhanden, das ausgelöst wird, wenn ein Benutzer ein anderes Element in einem DropDownListContentControl oder ComboBoxContentControl auswählt.

Wenn Sie ermitteln möchten, wenn ein Benutzer den Inhalt eines Inhaltssteuerelements bearbeitet, können Sie das Steuerelement an einen benutzerdefinierten XML-Abschnitt binden und dann das Ereignis StoreUpdating behandeln. Dieses Ereignis wird ausgelöst, wenn der Benutzer den Inhalt eines Steuerelements ändert, das an einen benutzerdefinierten XML-Abschnitt gebunden ist. Eine exemplarische Vorgehensweise, die das Binden eines Inhaltssteuerelements an einen benutzerdefinierten XML-Abschnitt veranschaulicht, finden Sie unter Exemplarische Vorgehensweise: Binden von Inhaltssteuerelementen an benutzerdefinierte XML-Abschnitte.

Mit Word 2010 wurde eine neue Art von Steuerelement eingeführt, das ein Kontrollkästchen darstellt. Allerdings stellen Visual Studio-Tools für Office-Laufzeit keinen entsprechenden CheckBoxContentControl-Typ bereit, den Sie in Office-Projekten verwenden können. Verwenden Sie zum Erstellen eines Kontrollkästchen-Inhaltssteuerelements in einem Word 2013- oder Word 2010-Projekt die Methode AddContentControl zum Erstellen eines Microsoft.Office.Tools.Word.ContentControl-Objekts, und übergeben Sie den Wert wdContentControlCheckBox an die Methode, um ein Kontrollkästchen-Inhaltssteuerelement anzugeben. Das folgende Codebeispiel veranschaulicht, wie Sie dabei vorgehen:

this.Paragraphs[1].Range.InsertParagraphBefore();
this.Paragraphs[1].Range.Select();
Microsoft.Office.Tools.Word.ContentControl checkBoxControl1 = 
    this.Controls.AddContentControl("checkBoxControl1", Word.WdContentControlType.wdContentControlCheckBox);

checkBoxControl1.Checked = true;

Anzeigen: