InsertField

InsertField(FieldType, bool, Node, bool)

在该段落中插入一个字段。

public Field InsertField(FieldType fieldType, bool updateField, Node refNode, bool isAfter)
范围类型描述
fieldTypeFieldType要插入的字段的类型。
updateFieldBoolean指定是否立即更新该字段。
refNodeNode参考本段内的节点(如果refNode无效的,然后附加到段落末尾)。
isAfterBoolean是否在引用节点之后或之前插入字段。

返回值

AField代表插入字段的对象。

例子

显示向段落添加字段的各种方法。

Document doc = new Document();
Paragraph para = doc.FirstSection.Body.FirstParagraph;

// 下面是在段落中插入字段的三种方法。
// 1 - 将 AUTHOR 字段插入到段落的子节点之一之后:
Run run = new Run(doc) { Text = "This run was written by " };
para.AppendChild(run);

doc.BuiltInDocumentProperties["Author"].Value = "John Doe";
para.InsertField(FieldType.FieldAuthor, true, run, true);

// 2 - 在段落的子节点之一后面插入 QUOTE 字段:
run = new Run(doc) { Text = "." };
para.AppendChild(run);

Field field = para.InsertField(" QUOTE \" Real value\" ", run, true);

// 3 - 在段落的子节点之一之前插入 QUOTE 字段,
// 并让它显示占位符值:
para.InsertField(" QUOTE \" Real value.\"", " Placeholder value.", field.Start, false);

Assert.AreEqual(" Placeholder value.", doc.Range.Fields[1].Result);

// 该字段将显示其占位符值,直到我们更新它。
doc.UpdateFields();

Assert.AreEqual(" Real value.", doc.Range.Fields[1].Result);

doc.Save(ArtifactsDir + "Paragraph.InsertField.docx");

也可以看看


InsertField(string, Node, bool)

在该段落中插入一个字段。

public Field InsertField(string fieldCode, Node refNode, bool isAfter)
范围类型描述
fieldCodeString要插入的字段代码(不带花括号)。
refNodeNode参考本段内的节点(如果refNode无效的,然后附加到段落末尾)。
isAfterBoolean是否在引用节点之后或之前插入字段。

返回值

AField代表插入字段的对象。

例子

显示向段落添加字段的各种方法。

Document doc = new Document();
Paragraph para = doc.FirstSection.Body.FirstParagraph;

// 下面是在段落中插入字段的三种方法。
// 1 - 将 AUTHOR 字段插入到段落的子节点之一之后:
Run run = new Run(doc) { Text = "This run was written by " };
para.AppendChild(run);

doc.BuiltInDocumentProperties["Author"].Value = "John Doe";
para.InsertField(FieldType.FieldAuthor, true, run, true);

// 2 - 在段落的子节点之一后面插入 QUOTE 字段:
run = new Run(doc) { Text = "." };
para.AppendChild(run);

Field field = para.InsertField(" QUOTE \" Real value\" ", run, true);

// 3 - 在段落的子节点之一之前插入 QUOTE 字段,
// 并让它显示占位符值:
para.InsertField(" QUOTE \" Real value.\"", " Placeholder value.", field.Start, false);

Assert.AreEqual(" Placeholder value.", doc.Range.Fields[1].Result);

// 该字段将显示其占位符值,直到我们更新它。
doc.UpdateFields();

Assert.AreEqual(" Real value.", doc.Range.Fields[1].Result);

doc.Save(ArtifactsDir + "Paragraph.InsertField.docx");

也可以看看


InsertField(string, string, Node, bool)

在该段落中插入一个字段。

public Field InsertField(string fieldCode, string fieldValue, Node refNode, bool isAfter)
范围类型描述
fieldCodeString要插入的字段代码(不带花括号)。
fieldValueString要插入的字段值。经过无效的对于没有值的字段。
refNodeNode参考本段内的节点(如果refNode无效的,然后附加到段落末尾)。
isAfterBoolean是否在引用节点之后或之前插入字段。

返回值

AField代表插入字段的对象。

例子

显示向段落添加字段的各种方法。

Document doc = new Document();
Paragraph para = doc.FirstSection.Body.FirstParagraph;

// 下面是在段落中插入字段的三种方法。
// 1 - 将 AUTHOR 字段插入到段落的子节点之一之后:
Run run = new Run(doc) { Text = "This run was written by " };
para.AppendChild(run);

doc.BuiltInDocumentProperties["Author"].Value = "John Doe";
para.InsertField(FieldType.FieldAuthor, true, run, true);

// 2 - 在段落的子节点之一后面插入 QUOTE 字段:
run = new Run(doc) { Text = "." };
para.AppendChild(run);

Field field = para.InsertField(" QUOTE \" Real value\" ", run, true);

// 3 - 在段落的子节点之一之前插入 QUOTE 字段,
// 并让它显示占位符值:
para.InsertField(" QUOTE \" Real value.\"", " Placeholder value.", field.Start, false);

Assert.AreEqual(" Placeholder value.", doc.Range.Fields[1].Result);

// 该字段将显示其占位符值,直到我们更新它。
doc.UpdateFields();

Assert.AreEqual(" Real value.", doc.Range.Fields[1].Result);

doc.Save(ArtifactsDir + "Paragraph.InsertField.docx");

也可以看看