ControlCollection.AddDropDownListContentControl 方法

定義

多載

AddDropDownListContentControl(String)

在文件的目前選取範圍新增 DropDownListContentControl

AddDropDownListContentControl(ContentControl, String)

將新的 DropDownListContentControl 加入集合中。 新控制項是以已在文件中的原生內容控制項為基礎。

AddDropDownListContentControl(Range, String)

將新的 DropDownListContentControl 新增在文件的指定範圍。

AddDropDownListContentControl(String)

在文件的目前選取範圍新增 DropDownListContentControl

public:
 Microsoft::Office::Tools::Word::DropDownListContentControl ^ AddDropDownListContentControl(System::String ^ name);
public Microsoft.Office.Tools.Word.DropDownListContentControl AddDropDownListContentControl (string name);
abstract member AddDropDownListContentControl : string -> Microsoft.Office.Tools.Word.DropDownListContentControl
Public Function AddDropDownListContentControl (name As String) As DropDownListContentControl

參數

name
String

新控制項的名稱。

傳回

已新增至文件的 DropDownListContentControl

例外狀況

namenull 或長度為 0。

ControlCollection 中已具有相同名稱的控制項。

範例

下列程式代碼範例會將新的 DropDownListContentControl 新增至檔的開頭。 此範例也會將數天的名稱新增至用戶可以在控件中選取的項目清單。

此版本適用於檔層級自定義。 若要使用此程式碼,請將它貼到專案中的 ThisDocument 類別,然後從 ThisDocument_Startup 方法呼叫 AddDropDownListControlAtSelection 方法。

private Microsoft.Office.Tools.Word.DropDownListContentControl dropDownListControl1;

private void AddDropDownListControlAtSelection()
{
    this.Paragraphs[1].Range.InsertParagraphBefore();
    this.Paragraphs[1].Range.Select();

    dropDownListControl1 = this.Controls.AddDropDownListContentControl("dropDownListControl1");
    dropDownListControl1.DropDownListEntries.Add("Monday", "Monday", 0);
    dropDownListControl1.DropDownListEntries.Add("Tuesday", "Tuesday", 1);
    dropDownListControl1.DropDownListEntries.Add("Wednesday", "Wednesday", 2);
    dropDownListControl1.PlaceholderText = "Choose a day";
}
Dim dropDownListControl1 As Microsoft.Office.Tools.Word.DropDownListContentControl

Private Sub AddDropDownListControlAtSelection()
    Me.Paragraphs(1).Range.InsertParagraphBefore()
    Me.Paragraphs(1).Range.Select()
    dropDownListControl1 = Me.Controls.AddDropDownListContentControl("dropDownListControl1")
    With dropDownListControl1
        .DropDownListEntries.Add("Monday", "Monday", 0)
        .DropDownListEntries.Add("Tuesday", "Tuesday", 1)
        .DropDownListEntries.Add("Wednesday", "Wednesday", 2)
        .PlaceholderText = "Choose a day"
    End With
End Sub

此版本適用於以 .NET Framework 4 或 .NET Framework 4.5 為目標的應用程式層級載入宏。 若要使用此程式碼,請將它貼到專案中的 ThisAddIn 類別,然後從 ThisAddIn_Startup 方法呼叫 AddDropDownListControlAtSelection 方法。

private Microsoft.Office.Tools.Word.DropDownListContentControl dropDownListControl1;

private void AddDropDownListControlAtSelection()
{
    if (this.Application.ActiveDocument == null)
        return;

    Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    vstoDoc.Paragraphs[1].Range.InsertParagraphBefore();
    vstoDoc.Paragraphs[1].Range.Select();

    dropDownListControl1 = vstoDoc.Controls.AddDropDownListContentControl("dropDownListControl1");
    dropDownListControl1.DropDownListEntries.Add("Monday", "Monday", 0);
    dropDownListControl1.DropDownListEntries.Add("Tuesday", "Tuesday", 1);
    dropDownListControl1.DropDownListEntries.Add("Wednesday", "Wednesday", 2);
    dropDownListControl1.PlaceholderText = "Choose a day";
}
Dim dropDownListControl1 As Microsoft.Office.Tools.Word.DropDownListContentControl

Private Sub AddDropDownListControlAtSelection()
    If Me.Application.ActiveDocument Is Nothing Then
        Return
    End If

    Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    vstoDoc.Paragraphs(1).Range.InsertParagraphBefore()
    vstoDoc.Paragraphs(1).Range.Select()
    dropDownListControl1 = vstoDoc.Controls.AddDropDownListContentControl("dropDownListControl1")
    With dropDownListControl1
        .DropDownListEntries.Add("Monday", "Monday", 0)
        .DropDownListEntries.Add("Tuesday", "Tuesday", 1)
        .DropDownListEntries.Add("Wednesday", "Wednesday", 2)
        .PlaceholderText = "Choose a day"
    End With
End Sub

備註

使用這個方法,在執行時間在檔案中的目前選取範圍加入新的 DropDownListContentControl 。 如需詳細資訊,請參閱 Adding Controls to Office Documents at Run Time

適用於

AddDropDownListContentControl(ContentControl, String)

將新的 DropDownListContentControl 加入集合中。 新控制項是以已在文件中的原生內容控制項為基礎。

public:
 Microsoft::Office::Tools::Word::DropDownListContentControl ^ AddDropDownListContentControl(Microsoft::Office::Interop::Word::ContentControl ^ contentControl, System::String ^ name);
public Microsoft.Office.Tools.Word.DropDownListContentControl AddDropDownListContentControl (Microsoft.Office.Interop.Word.ContentControl contentControl, string name);
abstract member AddDropDownListContentControl : Microsoft.Office.Interop.Word.ContentControl * string -> Microsoft.Office.Tools.Word.DropDownListContentControl
Public Function AddDropDownListContentControl (contentControl As ContentControl, name As String) As DropDownListContentControl

參數

contentControl
ContentControl

ContentControl,是新控制項的基礎。

name
String

新控制項的名稱。

傳回

已新增至文件的 DropDownListContentControl

例外狀況

contentControlnull.-或- namenull 或 具有零長度。

ControlCollection 中已具有相同名稱的控制項。

contentControl不是建置組塊庫 (也就是說,TypecontentControl 屬性沒有 Microsoft.Office.Interop.Word 值。WdContentControlType.wdContentControlDropdownList) 。

範例

下列程式代碼範例會針對檔案中的每個原生下拉式清單建立新的 DropDownListContentControl

此版本適用於檔層級自定義。 若要使用此程式碼,請將它貼到專案中的 ThisDocument 類別,然後從 ThisDocument_Startup 方法呼叫 CreateDropDownListControlsFromNativeControls 方法。

private System.Collections.Generic.List
    <Microsoft.Office.Tools.Word.DropDownListContentControl> dropDownControls;

private void CreateDropDownListControlsFromNativeControls()
{
    if (this.ContentControls.Count <= 0)
        return;

    dropDownControls = new System.Collections.Generic.List
        <Microsoft.Office.Tools.Word.DropDownListContentControl>();
    int count = 0;

    foreach (Word.ContentControl nativeControl in this.ContentControls)
    {
        if (nativeControl.Type == Word.WdContentControlType.wdContentControlDropdownList)
        {
            count++;
            Microsoft.Office.Tools.Word.DropDownListContentControl tempControl =
                this.Controls.AddDropDownListContentControl(nativeControl,
                "VSTODropDownListContentControl" + count.ToString());
            dropDownControls.Add(tempControl);
        }
    }
}
Private dropDownListControls As New System.Collections.Generic.List _
        (Of Microsoft.Office.Tools.Word.DropDownListContentControl)

Private Sub CreateDropDownListControlsFromNativeControls()
    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.wdContentControlDropdownList Then
            count += 1
            Dim tempControl As Microsoft.Office.Tools.Word.DropDownListContentControl = _
                Me.Controls.AddDropDownListContentControl(nativeControl, _
                "VSTODropDownListContentControl" + count.ToString())
            dropDownListControls.Add(tempControl)
        End If
    Next nativeControl
End Sub

此版本適用於以 .NET Framework 4 或 .NET Framework 4.5 為目標的應用程式層級載入宏。 若要使用此程式碼,請將它貼到ThisAddIn載入宏專案中的 ThisAddIn_Startup 類別,然後從方法呼叫 CreateDropDownListControlsFromNativeControls 方法。

private System.Collections.Generic.List
    <Microsoft.Office.Tools.Word.DropDownListContentControl> dropDownControls;

private void CreateDropDownListControlsFromNativeControls()
{
    if (this.Application.ActiveDocument == null)
        return;

    Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    if (vstoDoc.ContentControls.Count <= 0)
        return;

    dropDownControls = new System.Collections.Generic.List
        <Microsoft.Office.Tools.Word.DropDownListContentControl>();
    int count = 0;

    foreach (Word.ContentControl nativeControl in vstoDoc.ContentControls)
    {
        if (nativeControl.Type == Word.WdContentControlType.wdContentControlDropdownList)
        {
            count++;
            Microsoft.Office.Tools.Word.DropDownListContentControl tempControl =
                vstoDoc.Controls.AddDropDownListContentControl(nativeControl,
                "VSTODropDownListContentControl" + count.ToString());
            dropDownControls.Add(tempControl);
        }
    }
}
Private dropDownListControls As New System.Collections.Generic.List _
        (Of Microsoft.Office.Tools.Word.DropDownListContentControl)

Private Sub CreateDropDownListControlsFromNativeControls()
    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.wdContentControlDropdownList Then
            count += 1
            Dim tempControl As Microsoft.Office.Tools.Word.DropDownListContentControl = _
                vstoDoc.Controls.AddDropDownListContentControl(nativeControl, _
                "VSTODropDownListContentControl" + count.ToString())
            dropDownListControls.Add(tempControl)
        End If
    Next nativeControl
End Sub

下列程式代碼範例會針對使用者新增至檔案的每個原生下拉式清單建立新的 DropDownListContentControl

此版本適用於檔層級自定義。 若要使用此程式碼,請將它貼到專案中的 ThisDocument 類別。 針對 C#,您也必須將 ThisDocument_DropDownListContentControlAfterAdd 事件處理程式附加至 ContentControlAfterAdd 類別的 ThisDocument 事件。

void ThisDocument_DropDownListContentControlAfterAdd(Word.ContentControl NewContentControl, bool InUndoRedo)
{
    if (NewContentControl.Type == Word.WdContentControlType.wdContentControlDropdownList)
    {
        this.Controls.AddDropDownListContentControl(NewContentControl,
            "DropDownListControl" + NewContentControl.ID);
    }
}
Private Sub ThisDocument_DropDownListContentControlAfterAdd(ByVal NewContentControl As Word.ContentControl, _
    ByVal InUndoRedo As Boolean) Handles Me.ContentControlAfterAdd

    If NewContentControl.Type = Word.WdContentControlType.wdContentControlDropdownList Then
        Me.Controls.AddDropDownListContentControl(NewContentControl, _
            "DropDownListControl" + NewContentControl.ID)
    End If
End Sub

此版本適用於以 .NET Framework 4 或 .NET Framework 4.5 為目標的應用程式層級載入宏。 若要使用此程式碼,請將它貼到專案中的 ThisAddIn 類別。 此外,您必須將 ActiveDocument_DropDownListContentControlAfterAdd 事件處理程式附加至 ContentControlAfterAdd 使用中檔的 事件。

void ActiveDocument_DropDownListContentControlAfterAdd(
    Word.ContentControl NewContentControl, bool InUndoRedo)
{
    Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    if (NewContentControl.Type == Word.WdContentControlType.wdContentControlDropdownList)
    {
        vstoDoc.Controls.AddDropDownListContentControl(NewContentControl,
            "DropDownListControl" + NewContentControl.ID);
    }
}
Private Sub ActiveDocument_DropDownListContentControlAfterAdd( _
    ByVal NewContentControl As Word.ContentControl, _
    ByVal InUndoRedo As Boolean)

    Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    If NewContentControl.Type = Word.WdContentControlType. _
        wdContentControlDropdownList Then
        vstoDoc.Controls.AddDropDownListContentControl(NewContentControl, _
            "DropDownListControl" + NewContentControl.ID)
    End If
End Sub

備註

使用這個方法,在執行時間新增以檔案中原生內容控制項為基礎的新 DropDownListContentControl 。 當您在運行時間建立 DropDownListContentControl 時,這非常有用,而且您想要在下一次開啟檔時重新建立相同的控件。 如需詳細資訊,請參閱 Adding Controls to Office Documents at Run Time

適用於

AddDropDownListContentControl(Range, String)

將新的 DropDownListContentControl 新增在文件的指定範圍。

public:
 Microsoft::Office::Tools::Word::DropDownListContentControl ^ AddDropDownListContentControl(Microsoft::Office::Interop::Word::Range ^ range, System::String ^ name);
public Microsoft.Office.Tools.Word.DropDownListContentControl AddDropDownListContentControl (Microsoft.Office.Interop.Word.Range range, string name);
abstract member AddDropDownListContentControl : Microsoft.Office.Interop.Word.Range * string -> Microsoft.Office.Tools.Word.DropDownListContentControl
Public Function AddDropDownListContentControl (range As Range, name As String) As DropDownListContentControl

參數

range
Range

Range,提供新控制項的界限。

name
String

新控制項的名稱。

傳回

已新增至文件的 DropDownListContentControl

例外狀況

namenull 或長度為 0。

ControlCollection 中已具有相同名稱的控制項。

範例

下列程式代碼範例會將新的 DropDownListContentControl 新增至檔的開頭。 此範例也會將數天的名稱新增至用戶可以在控件中選取的項目清單。

此版本適用於檔層級自定義。 若要使用此程式碼,請將它貼到專案中的 ThisDocument 類別,然後從 ThisDocument_Startup 方法呼叫 AddDropDownListControlAtRange 方法。

private Microsoft.Office.Tools.Word.DropDownListContentControl dropDownListControl2;

private void AddDropDownListControlAtRange()
{
    this.Paragraphs[1].Range.InsertParagraphBefore();

    dropDownListControl2 = this.Controls.AddDropDownListContentControl(this.Paragraphs[1].Range,
        "dropDownListControl2");
    dropDownListControl2.DropDownListEntries.Add("Monday", "Monday", 0);
    dropDownListControl2.DropDownListEntries.Add("Tuesday", "Tuesday", 1);
    dropDownListControl2.DropDownListEntries.Add("Wednesday", "Wednesday", 2);
    dropDownListControl2.PlaceholderText = "Choose a day";
}
Dim dropDownListControl2 As Microsoft.Office.Tools.Word.DropDownListContentControl

Private Sub AddDropDownListControlAtRange()
    Me.Paragraphs(1).Range.InsertParagraphBefore()
    dropDownListControl2 = Me.Controls.AddDropDownListContentControl(Me.Paragraphs(1).Range, _
        "dropDownListControl2")
    With dropDownListControl2
        .DropDownListEntries.Add("Monday", "Monday", 0)
        .DropDownListEntries.Add("Tuesday", "Tuesday", 1)
        .DropDownListEntries.Add("Wednesday", "Wednesday", 2)
        .PlaceholderText = "Choose a day"
    End With
End Sub

此版本適用於以 .NET Framework 4 或 .NET Framework 4.5 為目標的應用程式層級載入宏。 若要使用此程式碼,請將它貼到專案中的 ThisAddIn 類別,然後從 ThisAddIn_Startup 方法呼叫 AddDropDownListControlAtRange 方法。

private Microsoft.Office.Tools.Word.DropDownListContentControl dropDownListControl2;

private void AddDropDownListControlAtRange()
{
    if (this.Application.ActiveDocument == null)
        return;

    Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    vstoDoc.Paragraphs[1].Range.InsertParagraphBefore();

    dropDownListControl2 = vstoDoc.Controls.AddDropDownListContentControl(
        vstoDoc.Paragraphs[1].Range,
        "dropDownListControl2");
    dropDownListControl2.DropDownListEntries.Add("Monday", "Monday", 0);
    dropDownListControl2.DropDownListEntries.Add("Tuesday", "Tuesday", 1);
    dropDownListControl2.DropDownListEntries.Add("Wednesday", "Wednesday", 2);
    dropDownListControl2.PlaceholderText = "Choose a day";
}
Dim dropDownListControl2 As Microsoft.Office.Tools.Word.DropDownListContentControl

Private Sub AddDropDownListControlAtRange()
    If Me.Application.ActiveDocument Is Nothing Then
        Return
    End If

    Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    vstoDoc.Paragraphs(1).Range.InsertParagraphBefore()
    dropDownListControl2 = vstoDoc.Controls.AddDropDownListContentControl( _
        vstoDoc.Paragraphs(1).Range, _
        "dropDownListControl2")
    With dropDownListControl2
        .DropDownListEntries.Add("Monday", "Monday", 0)
        .DropDownListEntries.Add("Tuesday", "Tuesday", 1)
        .DropDownListEntries.Add("Wednesday", "Wednesday", 2)
        .PlaceholderText = "Choose a day"
    End With
End Sub

備註

使用這個方法,在執行時間在檔案中的指定範圍新增新的 DropDownListContentControl 。 如需詳細資訊,請參閱 Adding Controls to Office Documents at Run Time

適用於