ControlExtensions.AddPictureBox Method (ControlCollection, Range, String)
Adds a new PictureBox control to the worksheet at the range specified.
Namespace: Microsoft.Office.Tools.Excel
Assembly: Microsoft.Office.Tools.Excel.v4.0.Utilities (in Microsoft.Office.Tools.Excel.v4.0.Utilities.dll)
Syntax
'Declaration
<ExtensionAttribute> _
Public Shared Function AddPictureBox ( _
controls As ControlCollection, _
range As Range, _
name As String _
) As PictureBox
public static PictureBox AddPictureBox(
this ControlCollection controls,
Range range,
string name
)
Parameters
controls
Type: Microsoft.Office.Tools.Excel.ControlCollectionThe collection to add the control to. Do not supply this parameter yourself. When you call this method on the collection returned by the Worksheet.Controls property (in an application-level project) or the WorksheetBase.Controls property (in a document-level project), this parameter is supplied automatically.
range
Type: Microsoft.Office.Interop.Excel.RangeA Range that provides the bounds for the control.
name
Type: System.StringThe name of the control that can be used to index the control in the ControlCollection instance.
Return Value
Type: Microsoft.Office.Tools.Excel.Controls.PictureBox
The PictureBox control that was added to the ControlCollection instance.
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type ControlCollection. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).
Exceptions
Exception | Condition |
---|---|
ArgumentNullException | The name or range argument is nulla null reference (Nothing in Visual Basic), or the name argument has zero length. |
ControlNameAlreadyExistsException | A control with the same name is already in the ControlCollection instance. |
InvalidRangeException | The range that was specified is not valid. Multi-area ranges cannot be used. The range should be on the same worksheet as the ControlCollection instance. |
Remarks
The AddPictureBox method enables you to add PictureBox objects to the end of the ControlCollection. To remove a PictureBox that was previously added programmatically, use the Remove method.
The control automatically resizes when the range is resized.
Examples
The following code example adds a PictureBox control to cells A1 through C12, and then adds an image. The example assumes a file named Image.jpg exists at the root of the C directory. To use this example, run it from the Sheet1 class in a document-level project.
Private Sub ExcelRangeAddPictureBox()
Dim PictureBox1 As Microsoft.Office.Tools. _
Excel.Controls.PictureBox = Me.Controls. _
AddPictureBox(Me.Range("A1", "C12"), _
"PictureBox1")
PictureBox1.Image = System.Drawing.Image. _
FromFile("C:\Image.jpg")
End Sub
private void ExcelRangeAddPictureBox()
{
Microsoft.Office.Tools.Excel.Controls.PictureBox
pictureBox1 = this.Controls.AddPictureBox(
this.Range["A1", "C12"], "pictureBox1");
pictureBox1.Image = System.Drawing.Image.FromFile(
"C:\\Image.jpg");
}
.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.