Skip to main content
All docs
V24.1

NestedShapeCollection.AddOleObject(String, String, DocumentImageSource, RectangleF) Method

Adds a linked OLE object to a shape group or a drawing canvas. The object is displayed in the document as an image.

Namespace: DevExpress.XtraRichEdit.API.Native

Assembly: DevExpress.RichEdit.v24.1.Core.dll

NuGet Packages: DevExpress.RichEdit.Core, DevExpress.Win.Navigation

Declaration

NestedShape AddOleObject(
    string fileName,
    string progId,
    DocumentImageSource presentation,
    RectangleF bounds
)

Parameters

Name Type Description
fileName String

A path to the file associated with the OLE object.

progId String

The file type. You can use constant fields of the OleObjectType class to set this value.

presentation DocumentImageSource

The source for the image that displays OLE object content.

bounds RectangleF

An object that defines the object’s size and location (relative to the top left corner of the parent object). The Document.Unit property specifies measurement units.

Returns

Type Description
NestedShape

The OLE object in the group or drawing canvas.

Remarks

The example below shows how to group two OLE objects. Use the ShapeCollection.InsertGroup method to create a shape group. The Shape.GroupItems property returns a collection of group elements. Call the AddOleObject methods to add OLE objects to the group.

Group OLE Objects

Document document = wordProcessor.Document;
// Set measurement unit to inches.
document.Unit = DevExpress.Office.DocumentUnit.Inch;
// Insert a shape group.
Shape group = document.Shapes.InsertGroup(document.Range.Start);
// Access the collection of group items. 
var groupItems = group.GroupItems;
// Add the first OLE object to the group.
// This object contains data from an Excel worksheet.
using (Stream excelStream = File.Open(@"D:\ExcelWorkbook.xlsx", FileMode.Open))
{
    groupItems.AddOleObject(excelStream, OleObjectType.ExcelWorksheet,
        DocumentImageSource.FromFile(@"Images\Spreadsheet.png"), new PointF(0f, 0f));
}
// Add the second OLE object to the group.
// The object links to an Excel chart sheet.
groupItems.AddOleObject(@"D:\ExcelChart.xlsx", OleObjectType.ExcelChart,
    DocumentImageSource.FromFile(@"Images\ExcelChart.png"), new RectangleF(0.5f, 1.2f, 5f, 3.5f));
See Also