ControlCollection.AddDropDownListContentControl (Método) (ContentControl, String)
Agrega un nuevo objeto DropDownListContentControl a la colección. El nuevo control se basa en un control de contenido nativo que ya está en el documento.
Espacio de nombres: Microsoft.Office.Tools.Word
Ensamblado: Microsoft.Office.Tools.Word (en Microsoft.Office.Tools.Word.dll)
Sintaxis
'Declaración
Function AddDropDownListContentControl ( _
contentControl As ContentControl, _
name As String _
) As DropDownListContentControl
DropDownListContentControl AddDropDownListContentControl(
ContentControl contentControl,
string name
)
Parámetros
- contentControl
Tipo: Microsoft.Office.Interop.Word.ContentControl
Microsoft.Office.Interop.Word.ContentControl que es la base del nuevo control.
- name
Tipo: System.String
Nombre del nuevo control.
Valor devuelto
Tipo: Microsoft.Office.Tools.Word.DropDownListContentControl
El control DropDownListContentControl que se agregó al documento.
Excepciones
Excepción | Condición |
---|---|
ArgumentNullException | El valor de contentControl es nullreferencia null (Nothing en Visual Basic). O bien name es nullreferencia null (Nothing en Visual Basic) o tiene longitud cero. |
ControlNameAlreadyExistsException | Ya existe un control con el mismo nombre en ControlCollection. |
ArgumentException | contentControl no es una galería de bloques de creación (es decir, la propiedad Type de contentControl no tiene el valor Microsoft.Office.Interop.Word.WdContentControlType.wdContentControlDropdownList). |
Comentarios
Utilice este método para agregar un nuevo control DropDownListContentControl basado en un control de contenido nativo del documento en tiempo de ejecución. Esto resulta útil si crea un control DropDownListContentControl en tiempo de ejecución y desea volver a crear el mismo control la próxima vez que se abra el documento. Para obtener más información, vea Agregar controles a documentos de Office en tiempo de ejecución.
Ejemplos
En el ejemplo de código siguiente se crea un nuevo DropDownListContentControl para cada lista desplegable nativa que hay en el documento.
Se trata de una versión para una personalización en el nivel del documento. Para usar este código, péguelo en la clase ThisDocument del proyecto y llame al método CreateDropDownListControlsFromNativeControls desde el método 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);
}
}
}
Esta versión es para un complemento de nivel de aplicación dirigido a .NET Framework 4. Para usar este código, péguelo en la clase ThisAddIn del proyecto de complemento y llame al método CreateDropDownListControlsFromNativeControls desde el método 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);
}
}
}
En el ejemplo de código siguiente se crea un nuevo DropDownListContentControl para cada lista desplegable nativa que el usuario agrega al documento.
Se trata de una versión para una personalización en el nivel del documento. Para usar este código, péguelo en la clase ThisDocument del proyecto. En C#, además debe asociar el controlador de eventos ThisDocument_DropDownListContentControlAfterAdd al evento ContentControlAfterAdd de la clase 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);
}
}
Esta versión es para un complemento de nivel de aplicación dirigido a .NET Framework 4. Para usar este código, péguelo en la clase ThisAddIn del proyecto. Además, debe asociar el controlador de eventos ActiveDocument_DropDownListContentControlAfterAdd al evento ContentControlAfterAdd del documento activo.
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);
}
}
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.
Vea también
Referencia
AddDropDownListContentControl (Sobrecarga)
Microsoft.Office.Tools.Word (Espacio de nombres)
Otros recursos
Agregar controles a documentos de Office en tiempo de ejecución