Skip to main content
All docs
V23.2
Row

Picture.ChangeImage(SpreadsheetImageSource, ImageReplacementMode) Method

Replaces the current worksheet image with a different image.

Namespace: DevExpress.Spreadsheet

Assembly: DevExpress.Spreadsheet.v23.2.Core.dll

NuGet Package: DevExpress.Spreadsheet.Core

Declaration

void ChangeImage(
    SpreadsheetImageSource imageSource,
    ImageReplacementMode mode = ImageReplacementMode.Stretch
)

Parameters

Name Type Description
imageSource SpreadsheetImageSource

An object used to load the new image.

Optional Parameters

Name Type Default Description
mode ImageReplacementMode Stretch

Specifies how to resize the new image. If omitted, Stretch mode is used.

Remarks

The example below demonstrates how to replace an existing picture in a worksheet and insert a new picture at the same position. The mode parameter is set to KeepAspectRatio. This mode scales the new picture to fit the largest dimension (width or height) of the original picture. The other dimension is calculated based on the aspect ratio of the inserted image.

Replace a worksheet image - Keep aspect ratio

using DevExpress.Spreadsheet;
// ...

// Set measurement unit to inches.
workbook.Unit = DevExpress.Office.DocumentUnit.Inch;
Worksheet worksheet = workbook.Worksheets.ActiveWorksheet;
// Insert a picture from a file.
// The picture's top left corner is in the "B2" cell.
var picture = worksheet.Pictures.AddPicture(SpreadsheetImageSource.FromFile(@"Images\DevAvLogo.png"), 
  worksheet.Cells["B2"]);
// Specify the picture size.
picture.Width = 0.5f;
picture.Height = 1f;
// Replace the picture.
picture.ChangeImage(SpreadsheetImageSource.FromFile(@"Images\DevExpressLogo.png"), 
  ImageReplacementMode.KeepAspectRatio);
See Also