InsertField

InsertField(FieldType, bool, Node, bool)

Вставляет поле в этот абзац.

public Field InsertField(FieldType fieldType, bool updateField, Node refNode, bool isAfter)
ПараметрТипОписание
fieldTypeFieldTypeТип поля для вставки.
updateFieldBooleanУказывает, следует ли немедленно обновить поле.
refNodeNodeСправочный узел внутри этого абзаца (еслиrefNode являетсянулевой, затем добавляется в конец абзаца).
isAfterBooleanВставлять ли поле после или перед опорным узлом.

Возвращаемое значение

АField объект, представляющий вставленное поле.

Примеры

Показаны различные способы добавления полей в абзац.

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 - Вставьте поле ЦИТАТЫ после одного из дочерних узлов абзаца:
run = new Run(doc) { Text = "." };
para.AppendChild(run);

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

// 3 - Вставьте поле ЦИТАТЫ перед одним из дочерних узлов абзаца,
// и заставить его отобразить значение заполнителя:
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Вставлять ли поле после или перед опорным узлом.

Возвращаемое значение

АField объект, представляющий вставленное поле.

Примеры

Показаны различные способы добавления полей в абзац.

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 - Вставьте поле ЦИТАТЫ после одного из дочерних узлов абзаца:
run = new Run(doc) { Text = "." };
para.AppendChild(run);

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

// 3 - Вставьте поле ЦИТАТЫ перед одним из дочерних узлов абзаца,
// и заставить его отобразить значение заполнителя:
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Вставлять ли поле после или перед опорным узлом.

Возвращаемое значение

АField объект, представляющий вставленное поле.

Примеры

Показаны различные способы добавления полей в абзац.

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 - Вставьте поле ЦИТАТЫ после одного из дочерних узлов абзаца:
run = new Run(doc) { Text = "." };
para.AppendChild(run);

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

// 3 - Вставьте поле ЦИТАТЫ перед одним из дочерних узлов абзаца,
// и заставить его отобразить значение заполнителя:
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");

Смотрите также