Udostępnij za pośrednictwem


Metoda ControlCollection.AddDropDownListContentControl — (ContentControl, String)

Dodano nowy DropDownListContentControl do kolekcji.Nowy formant jest oparty na macierzystym formant zawartości, który już znajduje się w dokumencie.

Przestrzeń nazw:  Microsoft.Office.Tools.Word
Zestaw:  Microsoft.Office.Tools.Word (w Microsoft.Office.Tools.Word.dll)

Składnia

'Deklaracja
Function AddDropDownListContentControl ( _
    contentControl As ContentControl, _
    name As String _
) As DropDownListContentControl
DropDownListContentControl AddDropDownListContentControl(
    ContentControl contentControl,
    string name
)

Parametry

Wartość zwracana

Typ: Microsoft.Office.Tools.Word.DropDownListContentControl
DropDownListContentControl Który został dodany do dokumentu.

Wyjątki

Wyjątek Warunek
ArgumentNullException

contentControlis nullodwołanie o wartości null (Nothing w języku Visual Basic).

-lub-

namejest nullodwołanie o wartości null (Nothing w języku Visual Basic) lub ma zerową długość.

ControlNameAlreadyExistsException

Formant o tej samej nazwie jest już pod ControlCollection.

ArgumentException

contentControlnie jest galerii bloków konstrukcyjnych (to znaczy Type właściwość contentControl ma wartość Microsoft.Office.Interop.Word.WdContentControlType.wdContentControlDropdownList).

Uwagi

Metoda ta pozwala dodać nowy DropDownListContentControl opartego na macierzystego formantu zawartości w dokumencie w czasie wykonywania.Jest to przydatne podczas tworzenia DropDownListContentControl w czasie wykonywania, a użytkownik chce odtworzyć przy następnym otwarciu dokumentu w tym samym formancie.Aby uzyskać więcej informacji, zobacz Dodawanie formantów do dokumentów pakietu Office w czasie wykonywania.

Przykłady

Poniższy przykład kodu tworzy nowy DropDownListContentControl dla każdego native rozwijanej listy, która znajduje się w dokumencie.

Ta wersja jest dostosowywanie poziomie dokumentu.Aby użyć tego kodu, wklej go do ThisDocument klasy w projekcie, a wywołanie CreateDropDownListControlsFromNativeControls metodę z ThisDocument_Startup metoda.

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
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);
        }
    }
}

Ta wersja jest na poziomie aplikacji dodatek programu rozprzestrzeniającym się .NET Framework 4 lub .NET Framework 4.5.Aby użyć tego kodu, wklej go do ThisAddIn klasy w projektu dodatek, a wywołanie CreateDropDownListControlsFromNativeControls metodę z ThisAddIn_Startup metoda.

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
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);
        }
    }
}

Poniższy przykład kodu tworzy nowy DropDownListContentControl dla każdego native rozwijanej listy, który użytkownik dodaje do dokumentu.

Ta wersja jest dostosowywanie poziomie dokumentu.Aby użyć tego kodu, wklej go do ThisDocument klasy do projektu.Język C#, należy ponadto dołączyć ThisDocument_DropDownListContentControlAfterAdd Obsługa zdarzeń do ContentControlAfterAdd przypadku ThisDocument klasy.

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
void ThisDocument_DropDownListContentControlAfterAdd(Word.ContentControl NewContentControl, bool InUndoRedo)
{
    if (NewContentControl.Type == Word.WdContentControlType.wdContentControlDropdownList)
    {
        this.Controls.AddDropDownListContentControl(NewContentControl,
            "DropDownListControl" + NewContentControl.ID);
    }
}

Ta wersja jest na poziomie aplikacji dodatek programu rozprzestrzeniającym się .NET Framework 4 lub .NET Framework 4.5. Aby użyć tego kodu, wklej go do ThisAddIn klasy do projektu.Ponadto należy dołączyć ActiveDocument_DropDownListContentControlAfterAdd Obsługa zdarzeń do ContentControlAfterAdd zdarzeń aktywnego dokumentu.

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
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);
    }
}

Zabezpieczenia programu .NET Framework

Zobacz też

Informacje

ControlCollection Interfejs

Przeciążenie AddDropDownListContentControl

Przestrzeń nazw Microsoft.Office.Tools.Word

Inne zasoby

Dodawanie formantów do dokumentów pakietu Office w czasie wykonywania

Jak: dodawanie formantów zawartości do dokumentów programu Word