ControlCollection.AddPictureContentControl Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
AddPictureContentControl(Range, String) |
Adiciona um novo PictureContentControl no intervalo especificado no documento. |
AddPictureContentControl(String) |
Adiciona um novo PictureContentControl na seleção atual no documento. |
AddPictureContentControl(ContentControl, String) |
Adiciona um novo PictureContentControl que se baseia em um controle de conteúdo nativo no documento. |
AddPictureContentControl(Range, String)
Adiciona um novo PictureContentControl no intervalo especificado no 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
O nome do novo controle.
Retornos
O PictureContentControl adicionado ao documento.
Exceções
name
é null
ou tem tamanho zero.
Um controle com o mesmo nome já está no ControlCollection.
Exemplos
O exemplo de código a seguir adiciona um novo PictureContentControl ao início do documento. Este exemplo pressupõe que exista um arquivo chamado picture.bmp
na pasta %UserProfile%\My Documents (para Windows XP e anterior) ou na pasta %UserProfile%\Documents (para Windows Vista).
Esta versão destina-se a uma personalização no nível de documento. Para usar esse código, cole-o na classe ThisDocument
do projeto e chame o método AddPictureControlAtRange
no método ThisDocument_Startup
.
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 versão é para um suplemento no nível do aplicativo que tem como destino o .NET Framework 4 ou o .NET Framework 4.5. Para usar esse código, cole-o na classe ThisAddIn
do projeto e chame o método AddPictureControlAtRange
no método ThisAddIn_Startup
.
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
Comentários
Use esse método para adicionar um novo PictureContentControl em um intervalo especificado no documento em tempo de execução. Para obter mais informações, consulte Adicionando controles a documentos do Office em tempo de execução.
Aplica-se a
AddPictureContentControl(String)
Adiciona um novo PictureContentControl na seleção atual no 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
O nome do novo controle.
Retornos
O PictureContentControl adicionado ao documento.
Exceções
name
é null
ou tem tamanho zero.
Um controle com o mesmo nome já está no ControlCollection.
Exemplos
O exemplo de código a seguir adiciona um novo PictureContentControl ao início do documento. Este exemplo pressupõe que exista um arquivo chamado picture.bmp
na pasta %UserProfile%\My Documents (para Windows XP e anterior) ou na pasta %UserProfile%\Documents (para Windows Vista).
Esta versão destina-se a uma personalização no nível de documento. Para usar esse código, cole-o na classe ThisDocument
do projeto e chame o método AddPictureControlAtSelection
no método ThisDocument_Startup
.
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 versão é para um suplemento no nível do aplicativo que tem como destino o .NET Framework 4 ou o .NET Framework 4.5. Para usar esse código, cole-o na classe ThisAddIn
do projeto e chame o método AddPictureControlAtSelection
no método ThisAddIn_Startup
.
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
Comentários
Use esse método para adicionar um novo PictureContentControl na seleção atual no documento em tempo de execução. Para obter mais informações, consulte Adicionando controles a documentos do Office em tempo de execução.
Aplica-se a
AddPictureContentControl(ContentControl, String)
Adiciona um novo PictureContentControl que se baseia em um controle de conteúdo nativo no 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
O ContentControl que é a base do novo controle.
- name
- String
O nome do novo controle.
Retornos
O PictureContentControl adicionado ao documento.
Exceções
contentControl
é null
.-ou- name
é null
ou tem comprimento zero.
Um controle com o mesmo nome já está no ControlCollection.
contentControl
não é uma galeria de blocos de construção (ou seja, a Type propriedade de contentControl
não tem o valor Microsoft.Office.Interop.Word. WdContentControlType.wdContentControlPicture).
Exemplos
O exemplo de código a seguir cria um novo PictureContentControl para cada controle de imagem nativo que está no documento.
Esta versão destina-se a uma personalização no nível de documento. Para usar esse código, cole-o na classe ThisDocument
do projeto e chame o método CreatePictureControlFromNativeControl
no método ThisDocument_Startup
.
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 versão é para um suplemento no nível do aplicativo que tem como destino o .NET Framework 4 ou o .NET Framework 4.5. Para usar esse código, cole-o na classe ThisAddIn
do projeto e chame o método CreatePictureControlFromNativeControl
no método ThisAddIn_Startup
.
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
O exemplo de código a seguir cria um novo PictureContentControl para cada controle de imagem nativo que o usuário adiciona ao documento.
Esta versão destina-se a uma personalização no nível de documento. Para usar esse código, cole-o na classe ThisDocument
do projeto. Para C#, você também deve anexar o ThisDocument_PictureContentControlAfterAdd
manipulador de eventos ao ContentControlAfterAdd evento da ThisDocument
classe .
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 versão é para um suplemento no nível do aplicativo que tem como destino o .NET Framework 4 ou o .NET Framework 4.5. Para usar esse código, cole-o na classe ThisAddIn
do projeto. Além disso, você deve anexar o ActiveDocument_PictureContentControlAfterAdd
manipulador de eventos ao ContentControlAfterAdd evento do documento ativo.
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
Comentários
Use esse método para adicionar um novo PictureContentControl baseado em um controle de conteúdo nativo no documento em tempo de execução. Isso é útil quando você cria um PictureContentControl em tempo de execução e deseja recriar o mesmo controle na próxima vez que o documento for aberto. Para obter mais informações, consulte Adicionando controles a documentos do Office em tempo de execução.