ControlCollection.AddRichTextContentControl-Methode (ContentControl, String) (2007 System)
Aktualisiert: Juli 2008
Fügt ein neues RichTextContentControl hinzu, das auf einem systemeigenen Inhaltssteuerelement im Dokument basiert.
Namespace: Microsoft.Office.Tools.Word
Assembly: Microsoft.Office.Tools.Word.v9.0 (in Microsoft.Office.Tools.Word.v9.0.dll)
Syntax
'Declaration
Public Function AddRichTextContentControl ( _
contentControl As ContentControl, _
name As String _
) As RichTextContentControl
'Usage
Dim instance As ControlCollection
Dim contentControl As ContentControl
Dim name As String
Dim returnValue As RichTextContentControl
returnValue = instance.AddRichTextContentControl(contentControl, _
name)
public RichTextContentControl AddRichTextContentControl(
ContentControl contentControl,
string name
)
Parameter
contentControl
Typ: Microsoft.Office.Interop.Word.ContentControlDas Microsoft.Office.Interop.Word.ContentControl, das die Grundlage für das neue Steuerelement darstellt.
name
Typ: System.StringDer Name des neuen Steuerelements.
Rückgabewert
Typ: Microsoft.Office.Tools.Word.RichTextContentControl
Das RichTextContentControl, das dem Dokument hinzugefügt wurde.
Ausnahmen
Ausnahme | Bedingung |
---|---|
ArgumentNullException | contentControl hat den Wert nullNULL-Verweis (Nothing in Visual Basic). - oder - name ist nullNULL-Verweis (Nothing in Visual Basic) oder hat die Länge 0 (null). |
ControlNameAlreadyExistsException | Ein Steuerelement mit dem gleichen Namen ist bereits in der ControlCollection vorhanden. |
ArgumentException | contentControl ist kein Bausteinkatalog (d. h., die Microsoft.Office.Interop.Word.ContentControl.Type-Eigenschaft von contentControl hat nicht den Wert Microsoft.Office.Interop.Word.WdContentControlType.wdContentControlRichText). |
Hinweise
Verwenden Sie diese Methode, um zur Laufzeit ein neues RichTextContentControl hinzuzufügen, das auf einem systemeigenen Inhaltssteuerelement im Dokument basiert. Diese Vorgehensweise ist hilfreich, wenn Sie ein RichTextContentControl zur Laufzeit erstellen und das gleiche Steuerelement beim nächsten Öffnen des Dokuments neu erstellen möchten. Weitere Informationen hierzu finden Sie unter Hinzufügen von Steuerelementen zu Office-Dokumenten zur Laufzeit.
Beispiele
Im folgenden Codebeispiel wird für jedes systemeigene Rich-Text-Steuerelement, das im Dokument enthalten ist, ein neues RichTextContentControl erstellt.
Diese Version bezieht sich auf eine Anpassung auf Dokumentebene. Zum Verwenden dieses Codes fügen Sie ihn in der ThisDocument-Klasse in das Projekt ein und rufen in der ThisDocument_Startup-Methode die CreateRichTextControlsFromNativeControls-Methode auf.
Private richTextControls As New System.Collections.Generic.List _
(Of Microsoft.Office.Tools.Word.RichTextContentControl)
Private Sub CreateRichTextControlsFromNativeControls()
If Me.ContentControls.Count <= 0 Then
Return
End If
Dim count As Integer = 0
For Each nativeControl As Word.ContentControl In Me.ContentControls
If nativeControl.Type = Word.WdContentControlType.wdContentControlRichText Then
count += 1
Dim tempControl As Microsoft.Office.Tools.Word.RichTextContentControl = _
Me.Controls.AddRichTextContentControl(nativeControl, _
"VSTORichTextContentControl" + count.ToString())
richTextControls.Add(tempControl)
End If
Next nativeControl
End Sub
private System.Collections.Generic.List
<Microsoft.Office.Tools.Word.RichTextContentControl> richTextControls;
private void CreateRichTextControlsFromNativeControls()
{
if (this.ContentControls.Count <= 0)
return;
richTextControls = new System.Collections.Generic.List
<Microsoft.Office.Tools.Word.RichTextContentControl>();
int count = 0;
foreach (Word.ContentControl nativeControl in this.ContentControls)
{
if (nativeControl.Type ==
Microsoft.Office.Interop.Word.WdContentControlType.wdContentControlRichText)
{
count++;
Microsoft.Office.Tools.Word.RichTextContentControl tempControl =
this.Controls.AddRichTextContentControl(nativeControl,
"VSTORichTextControl" + count.ToString());
richTextControls.Add(tempControl);
}
}
}
Diese Version bezieht sich auf ein Add-In auf Anwendungsebene. Zum Verwenden dieses Codes fügen Sie ihn in der ThisAddIn-Klasse in das Projekt ein und rufen in der ThisAddIn_Startup-Methode die CreateRichTextControlsFromNativeControls-Methode auf.
Private richTextControls As New System.Collections.Generic.List _
(Of Microsoft.Office.Tools.Word.RichTextContentControl)
Private Sub CreateRichTextControlsFromNativeControls()
If Me.Application.ActiveDocument Is Nothing Then
Return
End If
Dim vstoDoc As Document = Me.Application.ActiveDocument.GetVstoObject()
If vstoDoc.ContentControls.Count <= 0 Then
Return
End If
Dim count As Integer = 0
For Each nativeControl As Word.ContentControl In vstoDoc.ContentControls
If nativeControl.Type = Word.WdContentControlType.wdContentControlRichText Then
count += 1
Dim tempControl As Microsoft.Office.Tools.Word.RichTextContentControl = _
vstoDoc.Controls.AddRichTextContentControl(nativeControl, _
"VSTORichTextContentControl" + count.ToString())
richTextControls.Add(tempControl)
End If
Next nativeControl
End Sub
private System.Collections.Generic.List
<Microsoft.Office.Tools.Word.RichTextContentControl> richTextControls;
private void CreateRichTextControlsFromNativeControls()
{
if (this.Application.ActiveDocument == null)
return;
Document vstoDoc = this.Application.ActiveDocument.GetVstoObject();
if (vstoDoc.ContentControls.Count <= 0)
return;
richTextControls = new System.Collections.Generic.List
<Microsoft.Office.Tools.Word.RichTextContentControl>();
int count = 0;
foreach (Word.ContentControl nativeControl in vstoDoc.ContentControls)
{
if (nativeControl.Type ==
Microsoft.Office.Interop.Word.WdContentControlType.wdContentControlRichText)
{
count++;
Microsoft.Office.Tools.Word.RichTextContentControl tempControl =
vstoDoc.Controls.AddRichTextContentControl(nativeControl,
"VSTORichTextControl" + count.ToString());
richTextControls.Add(tempControl);
}
}
}
Im folgenden Codebeispiel wird für jedes systemeigene Rich-Text-Steuerelement, das der Benutzer dem Dokument hinzufügt, ein neues RichTextContentControl erstellt.
Diese Version bezieht sich auf eine Anpassung auf Dokumentebene. Wenn Sie diesen Code verwenden möchten, fügen Sie ihn in der ThisDocument-Klasse in das Projekt ein. In C# müssen Sie außerdem den ThisDocument_RichTextContentControlAfterAdd-Ereignishandler an das ContentControlAfterAdd-Ereignis der ThisDocument-Klasse anfügen.
Private Sub ThisDocument_RichTextContentControlAfterAdd(ByVal NewContentControl As Word.ContentControl, _
ByVal InUndoRedo As Boolean) Handles Me.ContentControlAfterAdd
If NewContentControl.Type = Word.WdContentControlType.wdContentControlRichText Then
Me.Controls.AddRichTextContentControl(NewContentControl, _
"RichTextControl" + NewContentControl.ID)
End If
End Sub
void ThisDocument_RichTextContentControlAfterAdd(Word.ContentControl NewContentControl, bool InUndoRedo)
{
if (NewContentControl.Type == Word.WdContentControlType.wdContentControlRichText)
{
this.Controls.AddRichTextContentControl(NewContentControl,
"RichTextControl" + NewContentControl.ID);
}
}
Diese Version bezieht sich auf ein Add-In auf Anwendungsebene. Wenn Sie diesen Code verwenden möchten, fügen Sie ihn in der ThisAddIn-Klasse in das Projekt ein. Außerdem müssen Sie den ActiveDocument_RichTextContentControlAfterAdd-Ereignishandler an das ContentControlAfterAdd-Ereignis des aktiven Dokuments anfügen.
Private Sub ActiveDocument_RichTextContentControlAfterAdd( _
ByVal NewContentControl As Word.ContentControl, _
ByVal InUndoRedo As Boolean)
Dim vstoDoc As Document = Me.Application.ActiveDocument.GetVstoObject()
If NewContentControl.Type = Word.WdContentControlType. _
wdContentControlRichText Then
vstoDoc.Controls.AddRichTextContentControl(NewContentControl, _
"RichTextControl" + NewContentControl.ID)
End If
End Sub
void ActiveDocument_RichTextContentControlAfterAdd(
Word.ContentControl NewContentControl, bool InUndoRedo)
{
Document vstoDoc = this.Application.ActiveDocument.GetVstoObject();
if (NewContentControl.Type == Word.WdContentControlType.wdContentControlRichText)
{
vstoDoc.Controls.AddRichTextContentControl(NewContentControl,
"RichTextControl" + NewContentControl.ID);
}
}
Berechtigungen
- Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code.
Siehe auch
Referenz
AddRichTextContentControl-Überladung
Microsoft.Office.Tools.Word-Namespace
Weitere Ressourcen
Hinzufügen von Steuerelementen zu Office-Dokumenten zur Laufzeit
Hilfsmethoden für Hoststeuerelemente
Gewusst wie: Hinzufügen von Inhaltssteuerelementen zu Word-Dokumenten
Änderungsprotokoll
Date |
Versionsgeschichte |
Grund |
---|---|---|
Juli 2008 |
Versionen von Codebeispielen für ein Add-In auf Anwendungsebene hinzugefügt. |
SP1-Featureänderung. |