Condividi tramite


ControlCollection.AddComboBoxContentControl Metodo

Definizione

Overload

AddComboBoxContentControl(String)

Aggiunge un nuovo ComboBoxContentControl in corrispondenza della selezione corrente nel documento.

AddComboBoxContentControl(ContentControl, String)

Aggiunge un nuovo oggetto ComboBoxContentControl alla raccolta. Il nuovo controllo è basato su un controllo contenuto nativo che è già nel documento.

AddComboBoxContentControl(Range, String)

Aggiunge un nuovo ComboBoxContentControl all'intervallo specificato nel documento.

AddComboBoxContentControl(String)

Aggiunge un nuovo ComboBoxContentControl in corrispondenza della selezione corrente nel documento.

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

Parametri

name
String

Nome del nuovo controllo.

Restituisce

Oggetto ComboBoxContentControl aggiunto al documento.

Eccezioni

name è null o ha lunghezza zero.

È già presente un controllo con lo stesso nome in ControlCollection.

Esempio

Nell'esempio di codice seguente viene aggiunto un nuovo oggetto ComboBoxContentControl all'inizio del documento. L'esempio aggiunge anche i nomi di diversi colori all'elenco di elementi che gli utenti possono selezionare nel controllo.

Questa versione è per una personalizzazione a livello di documento. Per usare questo codice, incollarlo nella ThisDocument classe nel progetto e chiamare il AddComboBoxControlAtSelection metodo dal ThisDocument_Startup metodo.

private Microsoft.Office.Tools.Word.ComboBoxContentControl comboBoxControl1;

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

    comboBoxControl1 = this.Controls.AddComboBoxContentControl("comboBoxControl1");
    comboBoxControl1.DropDownListEntries.Add("Red", "Red", 0);
    comboBoxControl1.DropDownListEntries.Add("Green", "Green", 1);
    comboBoxControl1.DropDownListEntries.Add("Blue", "Blue", 2);
    comboBoxControl1.PlaceholderText = "Choose a color, or enter your own";
}
Dim comboBoxControl1 As Microsoft.Office.Tools.Word.ComboBoxContentControl

Private Sub AddComboBoxControlAtSelection()
    Me.Paragraphs(1).Range.InsertParagraphBefore()
    Me.Paragraphs(1).Range.Select()
    comboBoxControl1 = Me.Controls.AddComboBoxContentControl("comboBoxControl1")
    With comboBoxControl1
        .DropDownListEntries.Add("Red", "Red", 0)
        .DropDownListEntries.Add("Green", "Green", 1)
        .DropDownListEntries.Add("Blue", "Blue", 2)
        .PlaceholderText = "Choose a color, or enter your own"
    End With
End Sub

Questa versione è per un componente aggiuntivo a livello di applicazione destinato a .NET Framework 4 o .NET Framework 4.5. Per usare questo codice, incollarlo nella ThisAddIn classe nel progetto e chiamare il AddComboBoxControlAtSelection metodo dal ThisAddIn_Startup metodo.

private Microsoft.Office.Tools.Word.ComboBoxContentControl comboBoxControl1;

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

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

    comboBoxControl1 = vstoDoc.Controls.AddComboBoxContentControl(
        "comboBoxControl1");
    comboBoxControl1.DropDownListEntries.Add("Red", "Red", 0);
    comboBoxControl1.DropDownListEntries.Add("Green", "Green", 1);
    comboBoxControl1.DropDownListEntries.Add("Blue", "Blue", 2);
    comboBoxControl1.PlaceholderText = "Choose a color, or enter your own";            
}
Dim comboBoxControl1 As Microsoft.Office.Tools.Word.ComboBoxContentControl

Private Sub AddComboBoxControlAtSelection()
    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()
    comboBoxControl1 = vstoDoc.Controls.AddComboBoxContentControl("comboBoxControl1")
    With comboBoxControl1
        .DropDownListEntries.Add("Red", "Red", 0)
        .DropDownListEntries.Add("Green", "Green", 1)
        .DropDownListEntries.Add("Blue", "Blue", 2)
        .PlaceholderText = "Choose a color, or enter your own"
    End With
End Sub

Commenti

Usare questo metodo per aggiungere un nuovo ComboBoxContentControl oggetto alla selezione corrente nel documento in fase di esecuzione. Per altre informazioni, vedere Adding Controls to Office Documents at Run Time.

Si applica a

AddComboBoxContentControl(ContentControl, String)

Aggiunge un nuovo oggetto ComboBoxContentControl alla raccolta. Il nuovo controllo è basato su un controllo contenuto nativo che è già nel documento.

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

Parametri

contentControl
ContentControl

Oggetto ContentControl che rappresenta la base per il nuovo controllo.

name
String

Nome del nuovo controllo.

Restituisce

Oggetto ComboBoxContentControl aggiunto al documento.

Eccezioni

contentControlè .-oname- è nullnullo ha una lunghezza zero.

È già presente un controllo con lo stesso nome in ControlCollection.

contentControlnon è una raccolta blocchi predefinito, ovvero la Type proprietà di contentControl non ha il valore Microsoft.Office.Interop.Word. WdContentControlType.wdContentControlComboBox.

Esempio

Nell'esempio di codice seguente viene creato un nuovo ComboBoxContentControl oggetto per ogni casella combinata nativa già presente nel documento.

Questa versione è per una personalizzazione a livello di documento. Per usare questo codice, incollarlo nella ThisDocument classe nel progetto e chiamare il CreateComboBoxControlsFromNativeControls metodo dal ThisDocument_Startup metodo.

private System.Collections.Generic.List
    <Microsoft.Office.Tools.Word.ComboBoxContentControl> comboBoxControls;

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

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

    foreach (Word.ContentControl nativeControl in this.ContentControls)
    {
        if (nativeControl.Type == Word.WdContentControlType.wdContentControlComboBox)
        {
            count++;
            Microsoft.Office.Tools.Word.ComboBoxContentControl tempControl =
                this.Controls.AddComboBoxContentControl(nativeControl,
                "VSTOComboBoxContentControl" + count.ToString());
            comboBoxControls.Add(tempControl);
        }
    }
}
Private comboBoxControls As New System.Collections.Generic.List _
        (Of Microsoft.Office.Tools.Word.ComboBoxContentControl)

Private Sub CreateComboBoxControlsFromNativeControls()
    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.wdContentControlComboBox Then
            count += 1
            Dim tempControl As Microsoft.Office.Tools.Word.ComboBoxContentControl = _
                Me.Controls.AddComboBoxContentControl(nativeControl, _
                "VSTOComboBoxContentControl" + count.ToString())
            comboBoxControls.Add(tempControl)
        End If
    Next nativeControl
End Sub

Questa versione è per un componente aggiuntivo a livello di applicazione destinato a .NET Framework 4 o .NET Framework 4.5. Per usare questo codice, incollarlo nella ThisAddIn classe nel progetto e chiamare il CreateComboBoxControlsFromNativeControls metodo dal ThisAddIn_Startup metodo.

private System.Collections.Generic.List
    <Microsoft.Office.Tools.Word.ComboBoxContentControl> comboBoxControls;

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

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

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

    foreach (Word.ContentControl nativeControl in vstoDoc.ContentControls)
    {
        if (nativeControl.Type == Word.WdContentControlType.wdContentControlComboBox)
        {
            count++;
            Microsoft.Office.Tools.Word.ComboBoxContentControl tempControl =
                vstoDoc.Controls.AddComboBoxContentControl(nativeControl,
                "VSTOComboBoxContentControl" + count.ToString());
            comboBoxControls.Add(tempControl);
        }
    }
}
Private comboBoxControls As New System.Collections.Generic.List _
        (Of Microsoft.Office.Tools.Word.ComboBoxContentControl)

Private Sub CreateComboBoxControlsFromNativeControls()
    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.wdContentControlComboBox Then
            count += 1
            Dim tempControl As Microsoft.Office.Tools.Word.ComboBoxContentControl = _
                vstoDoc.Controls.AddComboBoxContentControl(nativeControl, _
                "VSTOComboBoxContentControl" + count.ToString())
            comboBoxControls.Add(tempControl)
        End If
    Next nativeControl
End Sub

Nell'esempio di codice seguente viene creato un nuovo ComboBoxContentControl per ogni casella combinata nativa che l'utente aggiunge al documento.

Questa versione è per una personalizzazione a livello di documento. Per usare questo codice, incollarlo nella ThisDocument classe nel progetto. Per C#, è necessario collegare anche il ThisDocument_ComboBoxContentControlAfterAdd gestore eventi all'evento ContentControlAfterAdd della ThisDocument classe.

void ThisDocument_ComboBoxContentControlAfterAdd(Word.ContentControl NewContentControl, bool InUndoRedo)
{
    if (NewContentControl.Type == Word.WdContentControlType.wdContentControlComboBox)
    {
        this.Controls.AddComboBoxContentControl(NewContentControl,
            "ComboBoxControl" + NewContentControl.ID);
    }
}
Private Sub ThisDocument_ComboBoxContentControlAfterAdd(ByVal NewContentControl As Word.ContentControl, _
    ByVal InUndoRedo As Boolean) Handles Me.ContentControlAfterAdd

    If NewContentControl.Type = Word.WdContentControlType.wdContentControlComboBox Then
        Me.Controls.AddComboBoxContentControl(NewContentControl, _
            "ComboBoxControl" + NewContentControl.ID)
    End If
End Sub

Questa versione è per un componente aggiuntivo a livello di applicazione destinato a .NET Framework 4 o .NET Framework 4.5. Per usare questo codice, incollarlo nella ThisAddIn classe nel progetto. È inoltre necessario collegare il ActiveDocument_ComboBoxContentControlAfterAdd gestore eventi all'evento ContentControlAfterAdd del documento attivo.

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

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

Commenti

Usare questo metodo per aggiungere un nuovo ComboBoxContentControl oggetto basato su un controllo contenuto nativo nel documento in fase di esecuzione. Ciò è utile quando si crea un oggetto ComboBoxContentControl in fase di esecuzione e si vuole ricreare lo stesso controllo alla successiva apertura del documento. Per altre informazioni, vedere Adding Controls to Office Documents at Run Time.

Si applica a

AddComboBoxContentControl(Range, String)

Aggiunge un nuovo ComboBoxContentControl all'intervallo specificato nel documento.

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

Parametri

range
Range

Oggetto Range che specifica i limiti per il nuovo controllo.

name
String

Nome del nuovo controllo.

Restituisce

Oggetto ComboBoxContentControl aggiunto al documento.

Eccezioni

name è null o ha lunghezza zero.

È già presente un controllo con lo stesso nome in ControlCollection.

Esempio

Nell'esempio di codice seguente viene aggiunto un nuovo oggetto ComboBoxContentControl all'inizio del documento. L'esempio aggiunge anche i nomi di diversi colori all'elenco di elementi che gli utenti possono selezionare nel controllo.

Questa versione è per una personalizzazione a livello di documento. Per usare questo codice, incollarlo nella ThisDocument classe nel progetto e chiamare il AddComboBoxControlAtRange metodo dal ThisDocument_Startup metodo.

private Microsoft.Office.Tools.Word.ComboBoxContentControl comboBoxControl2;

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

    comboBoxControl2 = this.Controls.AddComboBoxContentControl(this.Paragraphs[1].Range,
        "comboBoxControl2");
    comboBoxControl2.DropDownListEntries.Add("Red", "Red", 0);
    comboBoxControl2.DropDownListEntries.Add("Green", "Green", 1);
    comboBoxControl2.DropDownListEntries.Add("Blue", "Blue", 2);
    comboBoxControl2.PlaceholderText = "Choose a color, or enter your own";
}
Dim comboBoxControl2 As Microsoft.Office.Tools.Word.ComboBoxContentControl

Private Sub AddComboBoxControlAtRange()
    Me.Paragraphs(1).Range.InsertParagraphBefore()
    comboBoxControl2 = Me.Controls.AddComboBoxContentControl(Me.Paragraphs(1).Range, "comboBoxControl2")
    With comboBoxControl2
        .DropDownListEntries.Add("Red", "Red", 0)
        .DropDownListEntries.Add("Green", "Green", 1)
        .DropDownListEntries.Add("Blue", "Blue", 2)
        .PlaceholderText = "Choose a color, or enter your own"
    End With
End Sub

Questa versione è per un componente aggiuntivo a livello di applicazione destinato a .NET Framework 4 o .NET Framework 4.5. Per usare questo codice, incollarlo nella ThisAddIn classe nel progetto e chiamare il AddComboBoxControlAtRange metodo dal ThisAddIn_Startup metodo.

private Microsoft.Office.Tools.Word.ComboBoxContentControl comboBoxControl2;

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

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

    comboBoxControl2 = vstoDoc.Controls.AddComboBoxContentControl(
        vstoDoc.Paragraphs[1].Range,
        "comboBoxControl2");
    comboBoxControl2.DropDownListEntries.Add("Red", "Red", 0);
    comboBoxControl2.DropDownListEntries.Add("Green", "Green", 1);
    comboBoxControl2.DropDownListEntries.Add("Blue", "Blue", 2);
    comboBoxControl2.PlaceholderText = "Choose a color, or enter your own";            
}
Dim comboBoxControl2 As Microsoft.Office.Tools.Word.ComboBoxContentControl

Private Sub AddComboBoxControlAtRange()
    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()
    comboBoxControl2 = vstoDoc.Controls.AddComboBoxContentControl( _
        vstoDoc.Paragraphs(1).Range, "comboBoxControl2")
    With comboBoxControl2
        .DropDownListEntries.Add("Red", "Red", 0)
        .DropDownListEntries.Add("Green", "Green", 1)
        .DropDownListEntries.Add("Blue", "Blue", 2)
        .PlaceholderText = "Choose a color, or enter your own"
    End With
End Sub

Commenti

Usare questo metodo per aggiungere un nuovo ComboBoxContentControl oggetto in un intervallo specificato nel documento in fase di esecuzione. Per altre informazioni, vedere Adding Controls to Office Documents at Run Time.

Si applica a