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 представляет собой сложную структуру, состоящую из нескольких узлов, включая начало поля, код поля , разделитель полей, результат поля и конец поля. Поля могут быть вложенными, содержать расширенное содержимое и охватывать несколько абзацев или разделов в документе.Fieldclass — это «фасадный» объект, предоставляющий свойства и методы , позволяющие работать с полем как с единым объектом.

Start ,Separator а такжеEnd свойства указывают на начало поля , разделитель и конечные узлы поля соответственно.

Содержимое между началом поля и разделителем является кодом поля. Содержимое между разделителем поля и концом поля является результатом поля. Код поля обычно состоит из одного или нескольких Run объекты, которые определяют инструкции. Ожидается, что приложение обработки выполнит код поля для вычисления результата поля.

Процесс подсчета полевых результатов называется обновлением поля. Aspose.Words может обновлять результаты field для большинства типов полей точно так же, как это делает Microsoft Word. В частности, Aspose.Words может вычислять результаты даже самых сложных полей формул. Чтобы вычислить результат field одного поля, используйтеUpdate метод. Для обновления полей во всем документе document используйтеUpdateFields.

Вы можете получить текстовую версию кода поля, используяGetFieldCode method. Вы можете получить и установить текстовую версию результата поля, используяResult property. И код поля, и результат поля могут содержать сложное содержимое, такое как вложенные поля, абзацы, формы, таблицы , и в этом случае вы можете работать с узлами полей напрямую, если вам нужно больше контроля.

Вы не создаете экземпляры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.That(DateTime.Parse(field.Result), Is.EqualTo(DateTime.Today).Within(1).Days);

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