ListFormat

ListFormat class

Позволяет контролировать, какое форматирование списка применяется к абзацу.

Чтобы узнать больше, посетитеРабота со списками статья документации.

public class ListFormat

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

ИмяОписание
IsListItem { get; }Истинно, если к абзацу применено маркированное или нумерованное форматирование.
List { get; set; }Получает или задает список, членом которого является этот абзац.
ListLevel { get; }Возвращает форматирование уровня списка плюс любые переопределения форматирования, примененные к текущему абзацу.
ListLevelNumber { get; set; }Получает или задает номер уровня списка (от 0 до 8) для абзаца.

Методы

ИмяОписание
ApplyBulletDefault()Запускает новый маркированный список по умолчанию и применяет его к абзацу.
ApplyNumberDefault()Запускает новый нумерованный список по умолчанию и применяет его к абзацу.
ListIndent()Увеличивает уровень списка текущего абзаца на один уровень.
ListOutdent()Уменьшает уровень списка текущего абзаца на один уровень.
RemoveNumbers()Удаляет номера или маркеры из текущего абзаца и устанавливает нулевой уровень списка.

Примечания

Абзац в документе Microsoft Word может быть маркирован или пронумерован. Когда абзац маркирован или пронумерован, говорят, что к абзацу применяется форматирование списка .

Вы не создаете объектыListFormat класс напрямую. Вы получаете доступListFormat как свойство другого объекта, с которым can связано форматирование списка. На данный момент объекты, которые can имеют форматирование списка:Paragraph , Style иDocumentBuilder.

ListFormat изParagraph указывает , какое форматирование списка и уровень списка применяются к этому конкретному абзацу.

ListFormat изStyle (applicable только для стилей абзацев) позволяет указать, какое форматирование списка и уровень списка level применяются ко всем абзацам этого конкретного стиля.

ListFormat изDocumentBuilder обеспечивает доступ к форматированию списка в текущей позиции курсора внутриDocumentBuilder.

Само форматирование списка хранится внутриList , который хранится отдельно от абзацев. Список объектов хранится внутриListCollection коллекция. Есть один ListCollection сбор заDocument.

Абзацы физически не принадлежат списку. Абзацы just ссылаются на конкретный объект списка черезList property и определенный уровень в списке черезListLevelNumber property. Установив эти два свойства, вы управляете тем, какие маркеры и нумерация is применяются к абзацу.

Примеры

Показывает, как работать с уровнями списка.

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

Assert.False(builder.ListFormat.IsListItem);

// Список позволяет нам организовывать и украшать наборы абзацев префиксными символами и отступами.
 // Мы можем создавать вложенные списки, увеличивая уровень отступа.
 // Мы можем начать и закончить список, используя свойство ListFormat конструктора документов.
// Каждый абзац, который мы добавляем между началом и концом списка, станет элементом списка.
// Ниже приведены два типа списков, которые мы можем создать с помощью конструктора документов.
// 1 - Нумерованный список:
// Нумерованные списки создают логический порядок абзацев путем нумерации каждого элемента.
builder.ListFormat.List = doc.Lists.Add(ListTemplate.NumberDefault);

Assert.True(builder.ListFormat.IsListItem);

// Установив свойство ListLevelNumber, мы можем повысить уровень списка
// чтобы начать автономный подсписок с текущего элемента списка.
// Шаблон списка Microsoft Word под названием «NumberDefault» использует числа для создания уровней списка для первого уровня списка.
 // На более глубоких уровнях списка используются буквы и строчные римские цифры.
for (int i = 0; i < 9; i++)
{
    builder.ListFormat.ListLevelNumber = i;
    builder.Writeln("Level " + i);
}

// 2 - Маркированный список:
// Этот список будет применять отступ и символ маркера («•») перед каждым абзацем.
// На более глубоких уровнях этого списка будут использоваться другие символы, например «■» и «○».
builder.ListFormat.List = doc.Lists.Add(ListTemplate.BulletDefault);

for (int i = 0; i < 9; i++)
{
    builder.ListFormat.ListLevelNumber = i;
    builder.Writeln("Level " + i);
}

// Мы можем отключить форматирование списка, чтобы не форматировать последующие абзацы как списки, сняв флаг «Список».
builder.ListFormat.List = null;

Assert.False(builder.ListFormat.IsListItem);

doc.Save(ArtifactsDir + "Lists.SpecifyListLevel.docx");

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