Field
内容
[
隐藏
]Field class
表示 Microsoft Word 文档字段。
要了解更多信息,请访问使用字段文档文章。
public class Field
特性
| 姓名 | 描述 |
|---|---|
| DisplayResult { get; } | 获取表示显示字段结果的文本。 |
| End { get; } | 获取代表字段结束的节点。 |
| Format { get; } | 获得FieldFormat提供对字段格式进行类型化访问的对象。 |
| IsDirty { get; set; } | 获取或设置字段的当前结果是否由于对文档所做的其他修改而不再正确(陈旧)。 |
| IsLocked { get; set; } | 获取或设置字段是否被锁定(不应重新计算其结果)。 |
| LocaleId { get; set; } | 获取或设置字段的 LCID。 |
| Result { get; set; } | 获取或设置字段分隔符和字段结尾之间的文本。 |
| Separator { get; } | 获取表示字段分隔符的节点。可以是无效的. |
| Start { get; } | 获取表示字段开始的节点。 |
| virtual Type { get; } | 获取 Microsoft Word 字段类型。 |
方法
| 姓名 | 描述 |
|---|---|
| GetFieldCode() | 返回字段开始和字段分隔符之间的文本(如果没有分隔符,则返回字段结束)。 包括子字段的字段代码和字段结果。 |
| GetFieldCode(bool) | 返回字段开始和字段分隔符之间的文本(如果没有分隔符,则返回字段结束)。 |
| Remove() | 从文档中移除该字段。返回紧接该字段之后的节点。如果该字段的末尾是其父节点的最后一个 child ,则返回其父段落。如果该字段已被移除,则返回无效的. |
| Unlink() | 执行字段取消链接。 |
| Update() | 执行字段更新。如果字段已在更新,则抛出异常。 |
| Update(bool) | 执行字段更新。如果字段已在更新,则抛出异常。 |
评论
Word 文档中的字段是一个复杂的结构,由多个节点组成,包括字段起始、字段代码、字段分隔符、字段结果和字段结束。字段可以嵌套,包含丰富的内容,并且可以在文档中跨多个段落或章节。字段Field类是一个“外观”对象,它提供 属性和方法,允许将字段作为单个对象来使用。
这Start,Separator和End属性分别指向 字段的开始、分隔符和结束节点。
字段起始和分隔符之间的内容为字段代码, 字段分隔符和字段结束之间的内容为字段结果,字段代码通常由一个或多个 组成Run指定指令的对象。处理应用程序需要执行 字段代码来计算字段结果。
计算字段结果的过程称为字段更新。Aspose.Words 可以更新大多数字段类型的 field 结果,其方式与 Microsoft Word 完全相同。最值得注意的是,Aspose.Words 甚至可以计算最复杂公式字段的结果。要计算单个字段的 field 结果,请使用Update方法。要更新整个 document 中的字段,请使用UpdateFields。
您可以使用以下方式获取字段代码的纯文本版本GetFieldCode方法。 您可以使用获取和设置字段结果的纯文本版本Result属性。 字段代码和字段结果都可以包含复杂的内容,例如嵌套字段、段落、形状、 表,在这种情况下,如果您需要更多控制,您可能希望直接使用字段节点。
您无需创建Field直接使用类。 要创建新字段,请使用InsertField方法。
例子
展示如何使用字段代码将字段插入文档。
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Field field = builder.InsertField("DATE \\@ \"dddd, MMMM dd, yyyy\"");
Assert.AreEqual(FieldType.FieldDate, field.Type);
Assert.AreEqual("DATE \\@ \"dddd, MMMM dd, yyyy\"", field.GetFieldCode());
// InsertField 方法的此重载会自动更新插入的字段。
Assert.True((DateTime.Today - DateTime.Parse(field.Result)).Days <= 1);
也可以看看
- 命名空间 Aspose.Words.Fields
- 部件 Aspose.Words