OleFormat

OleFormat class

提供对 OLE 对象或 ActiveX 控件的数据的访问。

要了解更多信息,请访问使用 Ole 对象文档文章。

public class OleFormat

特性

姓名描述
AutoUpdate { get; set; }指定 OLE 对象的链接是否在 Microsoft Word 中自动更新。
Clsid { get; }获取 OLE 对象的 CLSID。
IconCaption { get; }获取 OLE 对象的图标标题。
IsLink { get; }返回真的如果 OLE 对象已链接(当SourceFullName已指定).
IsLocked { get; set; }指定是否锁定 OLE 对象的链接以防止更新。
OleControl { get; }获取OleControl对象(如果此 OLE 对象是 ActiveX 控件)。否则此属性为 null。
OleIcon { get; }获取 OLE 对象的绘制方面。什么时候真的,OLE 对象显示为图标。 当错误的,OLE 对象显示为内容。
OlePackage { get; }提供对OlePackage如果 OLE 对象是 OLE 包。 返回无效的否则.
ProgId { get; set; }获取或设置 OLE 对象的 ProgID。
SourceFullName { get; set; }获取或设置链接的 OLE 对象的源文件的路径和名称。
SourceItem { get; set; }获取或设置一个字符串,用于标识正在链接的源文件部分。
SuggestedExtension { get; }如果要将当前嵌入对象保存到文件中,则获取建议的文件扩展名。
SuggestedFileName { get; }如果要将当前嵌入对象保存到文件中,则获取建议的文件名。

方法

姓名描述
GetOleEntry(string)获取 OLE 对象数据条目。
GetRawData()获取 OLE 对象原始数据。
Save(Stream)将嵌入对象的数据保存到指定的流中。
Save(string)将嵌入对象的数据保存到指定名称的文件中。

评论

使用OleFormat属性来访问 OLE 对象的数据。 您不创建OleFormat直接上课。

例子

演示如何将嵌入的 OLE 对象提取到文件中。

Document doc = new Document(MyDir + "OLE spreadsheet.docm");
Shape shape = (Shape)doc.GetChild(NodeType.Shape, 0, true);

// 第一个形状中的 OLE 对象是 Microsoft Excel 电子表格。
OleFormat oleFormat = shape.OleFormat;

Assert.AreEqual("Excel.Sheet.12", oleFormat.ProgId);

// 我们的对象既不会自动更新,也不会被更新锁定。
Assert.False(oleFormat.AutoUpdate);
Assert.AreEqual(false, oleFormat.IsLocked);

// 如果我们计划将 OLE 对象保存到本地文件系统中的文件中,
// 我们可以使用“SuggestedExtension”属性来确定要应用于该文件的文件扩展名。
Assert.AreEqual(".xlsx", oleFormat.SuggestedExtension);

// 下面是将 OLE 对象保存到本地文件系统中的文件的两种方法。
// 1 - 通过流保存:
using (FileStream fs = new FileStream(ArtifactsDir + "OLE spreadsheet extracted via stream" + oleFormat.SuggestedExtension, FileMode.Create))
{
    oleFormat.Save(fs);
}

// 2 - 直接将其保存到文件名:
oleFormat.Save(ArtifactsDir + "OLE spreadsheet saved directly" + oleFormat.SuggestedExtension);

也可以看看