GetFieldCode

GetFieldCode()

返回字段开始和字段分隔符之间的文本(或字段结束,如果没有分隔符)。 包括子字段的字段代码和字段结果。

public string GetFieldCode()

例子

演示如何使用域代码将域插入到文档中。

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.That(DateTime.Parse(field.Result), Is.EqualTo(DateTime.Today).Within(1).Days);

显示如何获取字段的域代码。

// 打开一个在 IF 字段中包含 MERGEFIELD 的文档。
Document doc = new Document(MyDir + "Nested fields.docx");
FieldIf fieldIf = (FieldIf)doc.Range.Fields[0];

// 获取字段的字段码有两种方式:
// 1 - 省略其内部字段:
Assert.AreEqual(" IF  > 0 \" (surplus of ) \" \"\" ", fieldIf.GetFieldCode(false));

// 2 - 包括其内部字段:
Assert.AreEqual($" IF \u0013 MERGEFIELD NetIncome \u0014\u0015 > 0 \" (surplus of \u0013 MERGEFIELD  NetIncome \\f $ \u0014\u0015) \" \"\" ",
    fieldIf.GetFieldCode(true));

// 默认情况下,GetFieldCode 方法显示内部字段。
Assert.AreEqual(fieldIf.GetFieldCode(), fieldIf.GetFieldCode(true));

也可以看看


GetFieldCode(bool)

返回字段开始和字段分隔符之间的文本(如果没有分隔符,则返回字段结束)。

public string GetFieldCode(bool includeChildFieldCodes)
范围 类型 描述
includeChildFieldCodes Boolean 真的是否应包含子域代码。

例子

显示如何获取字段的域代码。

// 打开一个在 IF 字段中包含 MERGEFIELD 的文档。
Document doc = new Document(MyDir + "Nested fields.docx");
FieldIf fieldIf = (FieldIf)doc.Range.Fields[0];

// 获取字段的字段码有两种方式:
// 1 - 省略其内部字段:
Assert.AreEqual(" IF  > 0 \" (surplus of ) \" \"\" ", fieldIf.GetFieldCode(false));

// 2 - 包括其内部字段:
Assert.AreEqual($" IF \u0013 MERGEFIELD NetIncome \u0014\u0015 > 0 \" (surplus of \u0013 MERGEFIELD  NetIncome \\f $ \u0014\u0015) \" \"\" ",
    fieldIf.GetFieldCode(true));

// 默认情况下,GetFieldCode 方法显示内部字段。
Assert.AreEqual(fieldIf.GetFieldCode(), fieldIf.GetFieldCode(true));

也可以看看