Metodo ControlCollection.AddDropDownListContentControl (ContentControl, String)
Aggiunge un nuovo DropDownListContentControl alla raccolta.Il nuovo controllo si basa su un controllo contenuto nativo già presente nel documento.
Spazio dei nomi: Microsoft.Office.Tools.Word
Assembly: Microsoft.Office.Tools.Word (in Microsoft.Office.Tools.Word.dll)
Sintassi
'Dichiarazione
Function AddDropDownListContentControl ( _
contentControl As ContentControl, _
name As String _
) As DropDownListContentControl
DropDownListContentControl AddDropDownListContentControl(
ContentControl contentControl,
string name
)
Parametri
- contentControl
Tipo: Microsoft.Office.Interop.Word.ContentControl
Oggetto Microsoft.Office.Interop.Word.ContentControl alla base del nuovo controllo.
- name
Tipo: System.String
Nome del nuovo controllo.
Valore restituito
Tipo: Microsoft.Office.Tools.Word.DropDownListContentControl
Oggetto DropDownListContentControl aggiunto al documento.
Eccezioni
Eccezione | Condizione |
---|---|
ArgumentNullException | contentControl è nullriferimento null (Nothing in Visual Basic). In alternativa name è nullriferimento null (Nothing in Visual Basic) oppure ha lunghezza zero. |
ControlNameAlreadyExistsException | In ControlCollection è già presente un controllo con lo stesso nome. |
ArgumentException | contentControl non è una raccolta di blocchi predefiniti, vale a dire che la proprietà Type di contentControl non ha il valore Microsoft.Office.Interop.Word.WdContentControlType.wdContentControlDropdownList. |
Note
Utilizzare questo metodo per aggiungere un nuovo oggetto DropDownListContentControl basato su un controllo contenuto nativo presente nel documento in fase di esecuzione.Questa operazione si rivela utile quando, nella creazione di DropDownListContentControl in fase di esecuzione, si desidera ricreare lo stesso controllo alla successiva apertura del documento.Per ulteriori informazioni, vedere Aggiunta di controlli ai documenti di Office in fase di esecuzione.
Esempi
Nell'esempio di codice seguente viene creato un nuovo oggetto DropDownListContentControl per ciascun elenco a discesa nativo presente nel documento.
Questa versione è valida per una personalizzazione a livello di documento.Per utilizzare questo codice, incollarlo nella classe ThisDocument del progetto e quindi chiamare il metodo CreateDropDownListControlsFromNativeControls dal metodo ThisDocument_Startup.
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);
}
}
}
Questa versione è per un componente aggiuntivo a livello di applicazione destinati .NET Framework 4 o .NET Framework 4.5.Per utilizzare questo codice, incollarlo nella classe ThisAddIn del progetto del componente aggiuntivo e quindi chiamare il metodo CreateDropDownListControlsFromNativeControls dal metodo ThisAddIn_Startup.
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);
}
}
}
Nell'esempio di codice seguente viene creato un nuovo oggetto DropDownListContentControl per ciascun elenco a discesa nativo aggiunto dall'utente al documento.
Questa versione è valida per una personalizzazione a livello di documento.Per utilizzare il codice, incollarlo nella classe ThisDocument del progetto.In C# è inoltre necessario collegare il gestore eventi ThisDocument_DropDownListContentControlAfterAdd all'evento ContentControlAfterAdd della classe ThisDocument.
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);
}
}
Questa versione è per un componente aggiuntivo a livello di applicazione destinati .NET Framework 4 o .NET Framework 4.5. Per utilizzare il codice, incollarlo nella classe ThisAddIn del progetto.È inoltre necessario collegare il gestore eventi ActiveDocument_DropDownListContentControlAfterAdd all'evento ContentControlAfterAdd del documento attivo.
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);
}
}
Sicurezza di .NET Framework
- Attendibilità totale per il chiamante immediato. Impossibile utilizzare questo membro in codice parzialmente attendibile. Per ulteriori informazioni, vedere Utilizzo di librerie da codice parzialmente attendibile.
Vedere anche
Riferimenti
Overload AddDropDownListContentControl
Spazio dei nomi Microsoft.Office.Tools.Word
Altre risorse
Aggiunta di controlli ai documenti di Office in fase di esecuzione
Procedura: aggiungere controlli del contenuto ai documenti di Word