ControlCollection.AddPictureContentControl Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
AddPictureContentControl(Range, String) |
Agrega un nuevo objeto PictureContentControl en el intervalo especificado en el documento. |
AddPictureContentControl(String) |
Agrega un nuevo objeto PictureContentControl en la selección actual del documento. |
AddPictureContentControl(ContentControl, String) |
Agrega un nuevo objeto PictureContentControl basado en un control de contenido nativo del documento. |
AddPictureContentControl(Range, String)
Agrega un nuevo objeto PictureContentControl en el intervalo especificado en el documento.
public:
Microsoft::Office::Tools::Word::PictureContentControl ^ AddPictureContentControl(Microsoft::Office::Interop::Word::Range ^ range, System::String ^ name);
public Microsoft.Office.Tools.Word.PictureContentControl AddPictureContentControl (Microsoft.Office.Interop.Word.Range range, string name);
abstract member AddPictureContentControl : Microsoft.Office.Interop.Word.Range * string -> Microsoft.Office.Tools.Word.PictureContentControl
Public Function AddPictureContentControl (range As Range, name As String) As PictureContentControl
Parámetros
- name
- String
El nombre del nuevo control.
Devoluciones
El objeto PictureContentControl que se agregó al documento.
Excepciones
name
es null
o tiene una longitud cero.
Un control con el mismo nombre ya se encuentra en el objeto ControlCollection.
Ejemplos
En el ejemplo de código siguiente se agrega un nuevo PictureContentControl al principio del documento. En este ejemplo se supone que existe un archivo denominado picture.bmp
en la carpeta %UserProfile%\My Documents (para Windows XP y versiones anteriores) o en la carpeta %UserProfile%\Documents (para Windows Vista).
Esta versión es para una personalización de nivel de documento. Para usar este código, péguelo en la ThisDocument
clase del proyecto y llame al AddPictureControlAtRange
método desde el ThisDocument_Startup
método .
private Microsoft.Office.Tools.Word.PictureContentControl pictureControl2;
private System.Drawing.Bitmap bitmap2;
private void AddPictureControlAtRange()
{
this.Paragraphs[1].Range.InsertParagraphBefore();
pictureControl2 = this.Controls.AddPictureContentControl(
this.Paragraphs[1].Range, "pictureControl2");
string imagePath = System.Environment.GetFolderPath(
Environment.SpecialFolder.MyDocuments) + "\\picture.bmp";
bitmap2 = new System.Drawing.Bitmap(imagePath, true);
pictureControl2.Image = bitmap2;
}
Dim pictureControl2 As Microsoft.Office.Tools.Word.PictureContentControl
Dim bitmap2 As System.Drawing.Bitmap
Private Sub AddPictureControlAtRange()
Me.Paragraphs(1).Range.InsertParagraphBefore()
pictureControl2 = Me.Controls.AddPictureContentControl(Me.Paragraphs(1).Range, "pictureControl2")
Dim imagePath As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments & _
"\picture.bmp"
bitmap2 = New System.Drawing.Bitmap(imagePath, True)
pictureControl2.Image = bitmap2
End Sub
Esta versión es para un complemento de nivel de aplicación que tiene como destino .NET Framework 4 o .NET Framework 4.5. Para usar este código, péguelo en la ThisAddIn
clase del proyecto y llame al AddPictureControlAtRange
método desde el ThisAddIn_Startup
método .
private Microsoft.Office.Tools.Word.PictureContentControl pictureControl2;
private System.Drawing.Bitmap bitmap2;
private void AddPictureControlAtRange()
{
if (this.Application.ActiveDocument == null)
return;
Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
vstoDoc.Paragraphs[1].Range.InsertParagraphBefore();
pictureControl2 = vstoDoc.Controls.AddPictureContentControl(
vstoDoc.Paragraphs[1].Range, "pictureControl2");
string imagePath = System.Environment.GetFolderPath(
Environment.SpecialFolder.MyDocuments) + "\\picture.bmp";
bitmap2 = new System.Drawing.Bitmap(imagePath, true);
pictureControl2.Image = bitmap2;
}
Dim pictureControl2 As Microsoft.Office.Tools.Word.PictureContentControl
Dim bitmap2 As System.Drawing.Bitmap
Private Sub AddPictureControlAtRange()
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()
pictureControl2 = vstoDoc.Controls.AddPictureContentControl( _
vstoDoc.Paragraphs(1).Range, "pictureControl2")
Dim imagePath As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments & _
"\picture.bmp"
bitmap2 = New System.Drawing.Bitmap(imagePath, True)
pictureControl2.Image = bitmap2
End Sub
Comentarios
Use este método para agregar un nuevo PictureContentControl en un intervalo especificado en el documento en tiempo de ejecución. Para obtener más información, consulta Adding Controls to Office Documents at Run Time.
Se aplica a
AddPictureContentControl(String)
Agrega un nuevo objeto PictureContentControl en la selección actual del documento.
public:
Microsoft::Office::Tools::Word::PictureContentControl ^ AddPictureContentControl(System::String ^ name);
public Microsoft.Office.Tools.Word.PictureContentControl AddPictureContentControl (string name);
abstract member AddPictureContentControl : string -> Microsoft.Office.Tools.Word.PictureContentControl
Public Function AddPictureContentControl (name As String) As PictureContentControl
Parámetros
- name
- String
El nombre del nuevo control.
Devoluciones
El objeto PictureContentControl que se agregó al documento.
Excepciones
name
es null
o tiene una longitud cero.
Un control con el mismo nombre ya se encuentra en el objeto ControlCollection.
Ejemplos
En el ejemplo de código siguiente se agrega un nuevo PictureContentControl al principio del documento. En este ejemplo se supone que existe un archivo denominado picture.bmp
en la carpeta %UserProfile%\My Documents (para Windows XP y versiones anteriores) o en la carpeta %UserProfile%\Documents (para Windows Vista).
Esta versión es para una personalización de nivel de documento. Para usar este código, péguelo en la ThisDocument
clase del proyecto y llame al AddPictureControlAtSelection
método desde el ThisDocument_Startup
método .
private Microsoft.Office.Tools.Word.PictureContentControl pictureControl1;
private System.Drawing.Bitmap bitmap1;
private void AddPictureControlAtSelection()
{
this.Paragraphs[1].Range.InsertParagraphBefore();
this.Paragraphs[1].Range.Select();
pictureControl1 = this.Controls.AddPictureContentControl("pictureControl1");
string imagePath = System.Environment.GetFolderPath(
Environment.SpecialFolder.MyDocuments) + "\\picture.bmp";
bitmap1 = new System.Drawing.Bitmap(imagePath, true);
pictureControl1.Image = bitmap1;
}
Dim pictureControl1 As Microsoft.Office.Tools.Word.PictureContentControl
Dim bitmap1 As System.Drawing.Bitmap
Private Sub AddPictureControlAtSelection()
Me.Paragraphs(1).Range.InsertParagraphBefore()
Me.Paragraphs(1).Range.Select()
pictureControl1 = Me.Controls.AddPictureContentControl("pictureControl1")
Dim imagePath As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments & _
"\picture.bmp"
bitmap1 = New System.Drawing.Bitmap(imagePath, True)
pictureControl1.Image = bitmap1
End Sub
Esta versión es para un complemento de nivel de aplicación que tiene como destino .NET Framework 4 o .NET Framework 4.5. Para usar este código, péguelo en la ThisAddIn
clase del proyecto y llame al AddPictureControlAtSelection
método desde el ThisAddIn_Startup
método .
private Microsoft.Office.Tools.Word.PictureContentControl pictureControl1;
private System.Drawing.Bitmap bitmap1;
private void AddPictureControlAtSelection()
{
if (this.Application.ActiveDocument == null)
return;
Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
vstoDoc.Paragraphs[1].Range.InsertParagraphBefore();
vstoDoc.Paragraphs[1].Range.Select();
pictureControl1 = vstoDoc.Controls.AddPictureContentControl("pictureControl1");
string imagePath = System.Environment.GetFolderPath(
Environment.SpecialFolder.MyDocuments) + "\\picture.bmp";
bitmap1 = new System.Drawing.Bitmap(imagePath, true);
pictureControl1.Image = bitmap1;
}
Dim pictureControl1 As Microsoft.Office.Tools.Word.PictureContentControl
Dim bitmap1 As System.Drawing.Bitmap
Private Sub AddPictureControlAtSelection()
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()
pictureControl1 = vstoDoc.Controls.AddPictureContentControl("pictureControl1")
Dim imagePath As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments & _
"\picture.bmp"
bitmap1 = New System.Drawing.Bitmap(imagePath, True)
pictureControl1.Image = bitmap1
End Sub
Comentarios
Use este método para agregar un nuevo PictureContentControl en la selección actual del documento en tiempo de ejecución. Para obtener más información, consulta Adding Controls to Office Documents at Run Time.
Se aplica a
AddPictureContentControl(ContentControl, String)
Agrega un nuevo objeto PictureContentControl basado en un control de contenido nativo del documento.
public:
Microsoft::Office::Tools::Word::PictureContentControl ^ AddPictureContentControl(Microsoft::Office::Interop::Word::ContentControl ^ contentControl, System::String ^ name);
public Microsoft.Office.Tools.Word.PictureContentControl AddPictureContentControl (Microsoft.Office.Interop.Word.ContentControl contentControl, string name);
abstract member AddPictureContentControl : Microsoft.Office.Interop.Word.ContentControl * string -> Microsoft.Office.Tools.Word.PictureContentControl
Public Function AddPictureContentControl (contentControl As ContentControl, name As String) As PictureContentControl
Parámetros
- contentControl
- ContentControl
El objeto ContentControl que es la base del nuevo control.
- name
- String
El nombre del nuevo control.
Devoluciones
El objeto PictureContentControl que se agregó al documento.
Excepciones
contentControl
es null
.-o- name
es null
o tiene una longitud cero.
Un control con el mismo nombre ya se encuentra en el objeto ControlCollection.
contentControl
no es una galería de bloques de creación (es decir, la Type propiedad de contentControl
no tiene el valor Microsoft.Office.Interop.Word. WdContentControlType.wdContentControlPicture).
Ejemplos
En el ejemplo de código siguiente se crea un nuevo PictureContentControl para cada control de imagen nativo que se encuentra en el documento.
Esta versión es para una personalización de nivel de documento. Para usar este código, péguelo en la ThisDocument
clase del proyecto y llame al CreatePictureControlFromNativeControl
método desde el ThisDocument_Startup
método .
private System.Collections.Generic.List
<Microsoft.Office.Tools.Word.PictureContentControl> pictureControls;
private void CreatePictureControlFromNativeControl()
{
if (this.ContentControls.Count <= 0)
return;
pictureControls = new System.Collections.Generic.List
<Microsoft.Office.Tools.Word.PictureContentControl>();
int count = 0;
foreach (Word.ContentControl nativeControl in this.ContentControls)
{
if (nativeControl.Type == Word.WdContentControlType.wdContentControlPicture)
{
count++;
Microsoft.Office.Tools.Word.PictureContentControl tempControl =
this.Controls.AddPictureContentControl(nativeControl,
"VSTOPictureContentControl" + count.ToString());
pictureControls.Add(tempControl);
}
}
}
Private pictureControls As New System.Collections.Generic.List _
(Of Microsoft.Office.Tools.Word.PictureContentControl)
Private Sub CreatePictureControlsFromNativeControls()
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.wdContentControlPicture Then
count += 1
Dim tempControl As Microsoft.Office.Tools.Word.PictureContentControl = _
Me.Controls.AddPictureContentControl(nativeControl, _
"VSTOPictureContentControl" + count.ToString())
pictureControls.Add(tempControl)
End If
Next nativeControl
End Sub
Esta versión es para un complemento de nivel de aplicación que tiene como destino .NET Framework 4 o .NET Framework 4.5. Para usar este código, péguelo en la ThisAddIn
clase del proyecto y llame al CreatePictureControlFromNativeControl
método desde el ThisAddIn_Startup
método .
private System.Collections.Generic.List
<Microsoft.Office.Tools.Word.PictureContentControl> pictureControls;
private void CreatePictureControlFromNativeControl()
{
if (this.Application.ActiveDocument == null)
return;
Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
if (vstoDoc.ContentControls.Count <= 0)
return;
pictureControls = new System.Collections.Generic.List
<Microsoft.Office.Tools.Word.PictureContentControl>();
int count = 0;
foreach (Word.ContentControl nativeControl in vstoDoc.ContentControls)
{
if (nativeControl.Type == Word.WdContentControlType.wdContentControlPicture)
{
count++;
Microsoft.Office.Tools.Word.PictureContentControl tempControl =
vstoDoc.Controls.AddPictureContentControl(nativeControl,
"VSTOPictureContentControl" + count.ToString());
pictureControls.Add(tempControl);
}
}
}
Private pictureControls As New System.Collections.Generic.List _
(Of Microsoft.Office.Tools.Word.PictureContentControl)
Private Sub CreatePictureControlsFromNativeControls()
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.wdContentControlPicture Then
count += 1
Dim tempControl As Microsoft.Office.Tools.Word.PictureContentControl = _
vstoDoc.Controls.AddPictureContentControl(nativeControl, _
"VSTOPictureContentControl" + count.ToString())
pictureControls.Add(tempControl)
End If
Next nativeControl
End Sub
En el ejemplo de código siguiente se crea un nuevo PictureContentControl para cada control de imagen nativo que el usuario agrega al documento.
Esta versión es para una personalización de nivel de documento. Para usar este código, péguelo en la ThisDocument
clase del proyecto. Para C#, también debe adjuntar el ThisDocument_PictureContentControlAfterAdd
controlador de eventos al ContentControlAfterAdd evento de la ThisDocument
clase .
void ThisDocument_PictureContentControlAfterAdd(Word.ContentControl NewContentControl, bool InUndoRedo)
{
if (NewContentControl.Type == Word.WdContentControlType.wdContentControlPicture)
{
this.Controls.AddPictureContentControl(NewContentControl,
"PictureControl" + NewContentControl.ID);
}
}
Private Sub ThisDocument_PictureContentControlAfterAdd(ByVal NewContentControl As Word.ContentControl, _
ByVal InUndoRedo As Boolean) Handles Me.ContentControlAfterAdd
If NewContentControl.Type = Word.WdContentControlType.wdContentControlPicture Then
Me.Controls.AddPictureContentControl(NewContentControl, _
"PictureControl" + NewContentControl.ID)
End If
End Sub
Esta versión es para un complemento de nivel de aplicación que tiene como destino .NET Framework 4 o .NET Framework 4.5. Para usar este código, péguelo en la ThisAddIn
clase del proyecto. Además, debe adjuntar el ActiveDocument_PictureContentControlAfterAdd
controlador de eventos al ContentControlAfterAdd evento del documento activo.
void ActiveDocument_PictureContentControlAfterAdd(
Word.ContentControl NewContentControl, bool InUndoRedo)
{
Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
if (NewContentControl.Type == Word.WdContentControlType.wdContentControlPicture)
{
vstoDoc.Controls.AddPictureContentControl(NewContentControl,
"PictureControl" + NewContentControl.ID);
}
}
Private Sub ActiveDocument_PictureContentControlAfterAdd( _
ByVal NewContentControl As Word.ContentControl, _
ByVal InUndoRedo As Boolean)
Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
If NewContentControl.Type = Word.WdContentControlType. _
wdContentControlPicture Then
vstoDoc.Controls.AddPictureContentControl(NewContentControl, _
"PictureControl" + NewContentControl.ID)
End If
End Sub
Comentarios
Utilice este método para agregar un nuevo PictureContentControl elemento basado en un control de contenido nativo en el documento en tiempo de ejecución. Esto resulta útil al crear un objeto PictureContentControl 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, consulta Adding Controls to Office Documents at Run Time.