FieldMacroButton

FieldMacroButton class

实现 MACROBUTTON 字段。

要了解更多信息,请访问使用字段文档文章。

public class FieldMacroButton : Field

构造函数

姓名描述
FieldMacroButton()默认构造函数。

特性

姓名描述
DisplayResult { get; }获取表示显示的字段结果的文本。
DisplayText { get; set; }获取或设置显示为选择运行宏或命令的“按钮”的文本。
End { get; }获取表示字段结束的节点。
Format { get; }获得FieldFormat提供对字段格式的类型化访问的对象。
IsDirty { get; set; }获取或设置字段的当前结果是否由于对文档进行的其他修改而不再正确(陈旧)。
IsLocked { get; set; }获取或设置字段是否被锁定(不应重新计算其结果)。
LocaleId { get; set; }获取或设置字段的 LCID。
MacroName { get; set; }获取或设置要运行的宏或命令的名称。
Result { get; set; }获取或设置字段分隔符和字段结束之间的文本。
Separator { get; }获取表示字段分隔符的节点。可无效的.
Start { get; }获取表示字段开始的节点。
virtual Type { get; }获取 Microsoft Word 字段类型。

方法

姓名描述
GetFieldCode()返回字段开始和字段分隔符之间的文本(如果没有分隔符,则返回字段结束)。 包括子字段的字段代码和字段结果。
GetFieldCode(bool)返回字段开始和字段分隔符之间的文本(如果没有分隔符,则返回字段结束)。
Remove()从文档中删除该字段。返回字段后面的节点。如果字段的结尾是其父节点的最后一个 child ,则返回其父段落。如果该字段已被删除,则返回无效的.
Unlink()执行字段取消链接。
Update()执行字段更新。如果该字段已被更新,则抛出异常。
Update(bool)执行字段更新。如果该字段已被更新,则抛出异常。

评论

允许运行宏或命令。

在 Aspose.Words 中,该字段还可以充当合并字段。

例子

演示如何使用 MACROBUTTON 字段来允许我们通过单击来运行文档的宏。

Document doc = new Document(MyDir + "Macro.docm");
DocumentBuilder builder = new DocumentBuilder(doc);

Assert.IsTrue(doc.HasMacros);

// 插入 MACROBUTTON 字段,并按 MacroName 属性中的名称引用文档的宏之一。
FieldMacroButton field = (FieldMacroButton)builder.InsertField(FieldType.FieldMacroButton, true);
field.MacroName = "MyMacro";
field.DisplayText = "Double click to run macro: " + field.MacroName;

Assert.AreEqual(" MACROBUTTON  MyMacro Double click to run macro: MyMacro", field.GetFieldCode());

// 使用该属性引用“ViewZoom200”,这是 Microsoft Word 附带的宏。
// 我们可以通过 View -> 找到所有其他宏宏(下拉菜单)->查看宏。
// 在该菜单中,从“宏位于:”下拉列表中选择“Word 命令”。
// 如果我们的文档包含与库存宏同名的自定义宏,
// 我们的宏将是 MACROBUTTON 字段运行的宏。
builder.InsertParagraph();
field = (FieldMacroButton)builder.InsertField(FieldType.FieldMacroButton, true);
field.MacroName = "ViewZoom200";
field.DisplayText = "Run " + field.MacroName;

Assert.AreEqual(" MACROBUTTON  ViewZoom200 Run ViewZoom200", field.GetFieldCode());

// 将文档保存为启用宏的文档类型。
doc.Save(ArtifactsDir + "Field.MACROBUTTON.docm");

也可以看看