Share via


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

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

See Also

Reference

ControlExtensions Class

AddPictureBox Overload

Microsoft.Office.Tools.Excel Namespace