officefileapi-devexpress-dot-xtrarichedit-dot-api-dot-native-dot-shapecollection-dot-insertoleobjectasicon-x28-documentposition-stream-string-documentimagesource-x29.md
Inserts an OLE object that stores data from the specified file. The object is displayed in the document as an icon.
Namespace : DevExpress.XtraRichEdit.API.Native
Assembly : DevExpress.RichEdit.v25.2.Core.dll
NuGet Package : DevExpress.RichEdit.Core
Shape InsertOleObjectAsIcon(
DocumentPosition pos,
Stream stream,
string progId,
DocumentImageSource icon
)
Function InsertOleObjectAsIcon(
pos As DocumentPosition,
stream As Stream,
progId As String,
icon As DocumentImageSource
) As Shape
| Name | Type | Description |
|---|---|---|
| pos | DocumentPosition |
The position of the object’s anchor.
| | stream | Stream |
A stream that contains data to embed in the document.
| | progId | String |
Embedded content type. You can use constant fields of the OleObjectType class to set this value.
| | icon | DocumentImageSource |
An object used to load the icon for the OLE object.
|
| Type | Description |
|---|---|
| Shape |
The OLE object added to the document.
|
The following example embeds an OLE object in the document:
Document document = wordProcessor.Document;
// Embed data from an Excel worksheet in the document.
// The OLE object is displayed in the document as an icon.
using (Stream excelStream = File.Open(@"D:\ExcelWorkbook.xlsx", FileMode.Open))
{
Shape oleObject = document.Shapes.InsertOleObjectAsIcon(document.CreatePosition(1780), excelStream,
OleObjectType.ExcelWorksheet, DocumentImageSource.FromFile(@"Images\Excel.ico"));
// Specify the object position on the page.
oleObject.RelativeHorizontalPosition = ShapeRelativeHorizontalPosition.Column;
oleObject.RelativeVerticalPosition = ShapeRelativeVerticalPosition.Paragraph;
oleObject.Offset = new PointF(0, 0);
// Specify how text wraps around the object.
oleObject.TextWrapping = TextWrappingType.TopAndBottom;
}
Dim document As Document = wordProcessor.Document
' Embed data from an Excel worksheet in the document.
Using excelStream As Stream = File.Open("D:\ExcelWorkbook.xlsx", FileMode.Open)
Dim oleObject As Shape = document.Shapes.InsertOleObjectAsIcon(document.CreatePosition(1780), excelStream, _
OleObjectType.ExcelWorksheet, DocumentImageSource.FromFile("Images\Excel.ico"))
' Specify the object position on the page.
oleObject.RelativeHorizontalPosition = ShapeRelativeHorizontalPosition.Column
oleObject.RelativeVerticalPosition = ShapeRelativeVerticalPosition.Paragraph
oleObject.Offset = New PointF(0, 0)
' Specify how text wraps around the object.
oleObject.TextWrapping = TextWrappingType.TopAndBottom
End Using
See Also