ControlCollection.AddPictureContentControl Method (, String) (2007 System)
Adds a new PictureContentControl at the specified range in the document.
Namespace: Microsoft.Office.Tools.Word
Assembly: Microsoft.Office.Tools.Word.v9.0 (in Microsoft.Office.Tools.Word.v9.0.dll)
Syntax
'Declaration
Public Function AddPictureContentControl ( _
range As Range, _
name As String _
) As PictureContentControl
'Usage
Dim instance As ControlCollection
Dim range As Range
Dim name As String
Dim returnValue As PictureContentControl
returnValue = instance.AddPictureContentControl(range, _
name)
public PictureContentControl AddPictureContentControl(
Range range,
string name
)
public:
PictureContentControl^ AddPictureContentControl(
Range^ range,
String^ name
)
public function AddPictureContentControl(
range : Range,
name : String
) : PictureContentControl
Parameters
range
Type: RangeA Range that provides the bounds for the new control.
name
Type: System.StringThe name of the new control.
Return Value
Type: Microsoft.Office.Tools.Word.PictureContentControl
The PictureContentControl that was added to the document.
Exceptions
Exception | Condition |
---|---|
ArgumentNullException | name is nulla null reference (Nothing in Visual Basic) or has zero length. |
ControlNameAlreadyExistsException | A control with the same name is already in the ControlCollection. |
Remarks
Use this method to add a new PictureContentControl at a specified range in the document at run time. For more information, see Adding Controls to Office Documents at Run Time.
Examples
The following code example adds a new PictureContentControl to the beginning of the document. This example assumes that a file named picture.bmp exists in the %UserProfile%\My Documents folder (for Windows XP and earlier) or the %UserProfile%\Documents folder (for Windows Vista).
This version is for a document-level customization. To use this code, paste it into the ThisDocument class in your project, and call the AddPictureControlAtRange method from the ThisDocument_Startup method.
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
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;
}
This version is for an application-level add-in. To use this code, paste it into the ThisAddIn class in your project, and call the AddPictureControlAtRange method from the ThisAddIn_Startup method.
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 = Me.Application.ActiveDocument.GetVstoObject()
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
private Microsoft.Office.Tools.Word.PictureContentControl pictureControl2;
private System.Drawing.Bitmap bitmap2;
private void AddPictureControlAtRange()
{
if (this.Application.ActiveDocument == null)
return;
Document vstoDoc = this.Application.ActiveDocument.GetVstoObject();
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;
}
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.
See Also
Reference
AddPictureContentControl Overload
Microsoft.Office.Tools.Word Namespace
Other Resources
Adding Controls to Office Documents at Run Time
Helper Methods for Host Controls
How to: Add Content Controls to Word Documents
Change History
Date |
History |
Reason |
---|---|---|
July 2008 |
Added a version of the code example for an application-level add-in. |
SP1 feature change. |