FieldPageRef
Содержание
[
Скрывать
]FieldPageRef class
Реализует поле PAGEREF.
Чтобы узнать больше, посетитеРабота с полями статья документации.
public class FieldPageRef : Field
Конструкторы
Имя | Описание |
---|---|
FieldPageRef() | Конструктор по умолчанию. |
Характеристики
Имя | Описание |
---|---|
BookmarkName { get; set; } | Получает или задает имя закладки. |
DisplayResult { get; } | Получает текст, представляющий результат отображаемого поля. |
End { get; } | Получает узел, представляющий конец поля. |
Format { get; } | ПолучаетFieldFormat объект, обеспечивающий типизированный доступ к форматированию поля. |
InsertHyperlink { get; set; } | Получает или задает необходимость вставки гиперссылки на абзац, отмеченный закладкой. |
InsertRelativePosition { get; set; } | Получает или задает, следует ли вставлять относительную позицию абзаца, отмеченного закладкой. |
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() | Удаляет поле из документа. Возвращает узел сразу после поля. Если конец поля является последним дочерним его родительского узла, возвращает его родительский абзац. Если поле уже удалено, возвращаетсянулевой . |
Unlink() | Выполняет отсоединение поля. |
Update() | Выполняет обновление поля. Выдает, если поле уже обновляется. |
Update(bool) | Выполняет обновление поля. Выдает, если поле уже обновляется. |
Примечания
Вставляет номер страницы, содержащей указанную закладку для перекрестной ссылки.
Примеры
Показывает, как вставить поля PAGEREF для отображения относительного расположения закладок.
public void FieldPageRef()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
InsertAndNameBookmark(builder, "MyBookmark1");
// Вставляем поле PAGEREF, которое показывает, на какой странице находится закладка.
// Установите флаг InsertHyperlink, чтобы поле также функционировало как кликабельная ссылка на закладку.
Assert.AreEqual(" PAGEREF MyBookmark3 \\h",
InsertFieldPageRef(builder, "MyBookmark3", true, false, "Hyperlink to Bookmark3, on page: ").GetFieldCode());
// Мы можем использовать флаг \p, чтобы отобразить поле PAGEREF
// положение закладки относительно положения поля.
// Bookmark1 находится на той же странице и над этим полем, поэтому отображаемый результат для этого поля будет «выше».
Assert.AreEqual(" PAGEREF MyBookmark1 \\h \\p",
InsertFieldPageRef(builder, "MyBookmark1", true, true, "Bookmark1 is ").GetFieldCode());
// Bookmark2 будет находиться на той же странице и под этим полем, поэтому отображаемый результат этого поля будет «ниже».
Assert.AreEqual(" PAGEREF MyBookmark2 \\h \\p",
InsertFieldPageRef(builder, "MyBookmark2", true, true, "Bookmark2 is ").GetFieldCode());
// Bookmark3 будет на другой странице, поэтому поле будет отображаться как «на странице 2».
Assert.AreEqual(" PAGEREF MyBookmark3 \\h \\p",
InsertFieldPageRef(builder, "MyBookmark3", true, true, "Bookmark3 is ").GetFieldCode());
InsertAndNameBookmark(builder, "MyBookmark2");
builder.InsertBreak(BreakType.PageBreak);
InsertAndNameBookmark(builder, "MyBookmark3");
doc.UpdatePageLayout();
doc.UpdateFields();
doc.Save(ArtifactsDir + "Field.PAGEREF.docx");
}
/// <summary>
/// Использует конструктор документов для вставки поля PAGEREF и устанавливает его свойства.
/// </summary>
private static FieldPageRef InsertFieldPageRef(DocumentBuilder builder, string bookmarkName, bool insertHyperlink, bool insertRelativePosition, string textBefore)
{
builder.Write(textBefore);
FieldPageRef field = (FieldPageRef)builder.InsertField(FieldType.FieldPageRef, true);
field.BookmarkName = bookmarkName;
field.InsertHyperlink = insertHyperlink;
field.InsertRelativePosition = insertRelativePosition;
builder.Writeln();
return field;
}
/// <summary>
/// Использует конструктор документов для вставки именованной закладки.
/// </summary>
private static void InsertAndNameBookmark(DocumentBuilder builder, string bookmarkName)
{
builder.StartBookmark(bookmarkName);
builder.Writeln($"Contents of bookmark \"{bookmarkName}\".");
builder.EndBookmark(bookmarkName);
}
Смотрите также
- class Field
- пространство имен Aspose.Words.Fields
- сборка Aspose.Words