FieldDocVariable

FieldDocVariable class

Реализует поле DOCVARIABLE.

public class FieldDocVariable : Field

Конструкторы

Имя Описание
FieldDocVariable() Конструктор по умолчанию.

Характеристики

Имя Описание
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.
VariableName { get; set; } Получает или задает имя переменной документа для извлечения.

Методы

Имя Описание
GetFieldCode() Возвращает текст между началом поля и разделителем поля (или концом поля, если разделителя нет). Включены как код поля, так и результат поля дочерних полей.
GetFieldCode(bool) Возвращает текст между началом поля и разделителем полей (или концом поля, если разделителя нет).
Remove() Удаляет поле из документа. Возвращает узел сразу после поля. Если конец поля является последним child его родительского узла, возвращает его родительский абзац. Если поле уже удалено, возвращает нулевой .
Unlink() Выполняет развязку поля.
Update() Выполняет обновление поля. Выдает, если поле уже обновляется.
Update(bool) Выполняет обновление поля. Выдает, если поле уже обновляется.

Примеры

Показывает, как использовать поля DOCPROPERTY для отображения свойств и переменных документа.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// Ниже приведены два способа использования полей DOCPROPERTY.
// 1 - Показать встроенное свойство:
// Установите пользовательское значение для встроенного свойства «Категория», затем вставьте поле DOCPROPERTY, которое на него ссылается.
doc.BuiltInDocumentProperties.Category = "My category";

FieldDocProperty fieldDocProperty = (FieldDocProperty)builder.InsertField(" DOCPROPERTY Category ");
fieldDocProperty.Update();

Assert.AreEqual(" DOCPROPERTY Category ", fieldDocProperty.GetFieldCode());
Assert.AreEqual("My category", fieldDocProperty.Result);

builder.InsertParagraph();

// 2 - Отобразить пользовательскую переменную документа:
// Определяем пользовательскую переменную, затем ссылаемся на эту переменную с помощью поля DOCPROPERTY.
Assert.That(doc.Variables, Is.Empty);
doc.Variables.Add("My variable", "My variable's value");

FieldDocVariable fieldDocVariable = (FieldDocVariable)builder.InsertField(FieldType.FieldDocVariable, true);
fieldDocVariable.VariableName = "My Variable";
fieldDocVariable.Update();

Assert.AreEqual(" DOCVARIABLE  \"My Variable\"", fieldDocVariable.GetFieldCode());
Assert.AreEqual("My variable's value", fieldDocVariable.Result);

doc.Save(ArtifactsDir + "Field.DOCPROPERTY.DOCVARIABLE.docx");

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