ControlCollection.AddRichTextContentControl Yöntem (ContentControl, String)
Yeni bir ekler RichTextContentControl belgeyi özgün içerik denetimi dayanır.
Ad alanı: Microsoft.Office.Tools.Word
Derleme: Microsoft.Office.Tools.Word (Microsoft.Office.Tools.Word.dll içinde)
Sözdizimi
'Bildirim
Function AddRichTextContentControl ( _
contentControl As ContentControl, _
name As String _
) As RichTextContentControl
RichTextContentControl AddRichTextContentControl(
ContentControl contentControl,
string name
)
Parametreler
- contentControl
Tür: Microsoft.Office.Interop.Word.ContentControl
Microsoft.Office.Interop.Word.ContentControl Yani yeni denetim için temel.
- name
Tür: System.String
Yeni denetimin adı.
Dönüş Değeri
Tür: Microsoft.Office.Tools.Word.RichTextContentControl
RichTextContentControl Belgeye eklenmiştir.
Özel Durumlar
Exception | Koşul |
---|---|
ArgumentNullException | contentControlis nullnull başvuru (Visual Basic'te Nothing). -veya- nameise nullnull başvuru (Visual Basic'te Nothing) veya sıfır uzunlukta. |
ControlNameAlreadyExistsException | Aynı ada sahip bir denetim içinde ControlCollection. |
ArgumentException | contentControlyapıtaşı Galerisi değil (yani, Microsoft.Office.Interop.Word.ContentControl.Type özelliği contentControl değeri yok Microsoft.Office.Interop.Word.WdContentControlType.wdContentControlRichText). |
Notlar
Yeni eklemek için bu yöntemi kullanın RichTextContentControl , temel belge özgün içerik denetimi zamanında.Oluşturduğunuzda, bu yararlı bir RichTextContentControl çalışma zamanında ve belge açıldığında bir sonraki açışınızda aynı denetimi yeniden istiyor.Daha fazla bilgi için bkz. Belgeye Çalışma Zamanında Denetim Ekleme.
Örnekler
Aşağıdaki kod örneği, yeni bir oluşturur RichTextContentControl belgedeki her doğal zengin metin denetimi için.
Belge düzeyinde özelleştirme için değildir.Bu kodu kullanmak için içine yapıştırın ThisDocument sınıfı proje ve çağrı CreateRichTextControlsFromNativeControls yönteminin ThisDocument_Startup yöntemi.
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);
}
}
}
Bir uygulama düzeyinde hedefleyen eklentisi için değil .NET Framework 4.Bu kodu kullanmak için içine yapıştırın ThisAddIn sınıfı proje ve çağrı CreateRichTextControlsFromNativeControls yönteminin ThisAddIn_Startup yöntemi.
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 = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
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 = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
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);
}
}
}
Aşağıdaki kod örneği, yeni bir oluşturur RichTextContentControl her doğal zengin metin denetimi, kullanıcı belgeye ekler.
Belge düzeyinde özelleştirme için değildir.Bu kodu kullanmak için içine yapıştırın ThisDocument Projenizde sınıf.C# için sizin de eklemek gerekir ThisDocument_RichTextContentControlAfterAdd olay işleyicisi ContentControlAfterAdd , olay ThisDocument sınıfı.
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);
}
}
Bir uygulama düzeyinde hedefleyen eklentisi için değil .NET Framework 4.Bu kodu kullanmak için içine yapıştırın ThisAddIn Projenizde sınıf.Ayrıca iliştirmelisiniz ActiveDocument_RichTextContentControlAfterAdd olay işleyicisi ContentControlAfterAdd etkin belgenin olay.
Private Sub ActiveDocument_RichTextContentControlAfterAdd( _
ByVal NewContentControl As Word.ContentControl, _
ByVal InUndoRedo As Boolean)
Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
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 = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
if (NewContentControl.Type == Word.WdContentControlType.wdContentControlRichText)
{
vstoDoc.Controls.AddRichTextContentControl(NewContentControl,
"RichTextControl" + NewContentControl.ID);
}
}
.NET Framework Güvenliği
- Anında arayanlar için tam güven. Bu üye kısmen güvenilen kodla kullanılamaz. Daha fazla bilgi için bkz. Kısmen güvenilen kod kitaplıklarını kullanma.
Ayrıca bkz.
Başvuru
AddRichTextContentControl Fazla Yük
Microsoft.Office.Tools.Word Ad Alanı
Diğer Kaynaklar
Belgeye Çalışma Zamanında Denetim Ekleme
Nasıl yapılır: Word belgeleri için içerik denetimleri ekleme