Insert

NodeCollection.Insert method

Вставляет узел в коллекцию по указанному индексу.

public void Insert(int index, Node node)
Параметр Тип Описание
index Int32 Отсчитываемый от нуля индекс узла. Отрицательные индексы разрешены и указывают на доступ из конца списка. Например, -1 означает последний узел, -2 означает предпоследний и так далее.
node Node Узел для вставки.

Исключения

исключение условие
NotSupportedException NodeCollection представляет собой «глубокую» коллекцию.

Примечания

Узел вставляется как дочерний в объект узла, из которого была создана коллекция.

Если индекс равен или больше Count, узел добавляется в конец коллекции.

Если индекс отрицательный и его абсолютное значение больше, чем Count, узел добавляется в конец коллекции.

Если новый дочерний элемент уже находится в дереве, он сначала удаляется.

Если вставляемый узел был создан из другого документа, следует использовать ImportNode чтобы импортировать узел в текущий документ. Затем импортированный узел можно вставить в текущий документ.

Примеры

Показывает, как работать с NodeCollection.

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

// Добавляем текст в документ, вставляя Runs с помощью DocumentBuilder.
builder.Write("Run 1. ");
builder.Write("Run 2. ");

// Каждый вызов метода «Запись» создает новый запуск,
// который затем появляется в коллекции RunCollection родительского абзаца.
RunCollection runs = doc.FirstSection.Body.FirstParagraph.Runs;

Assert.AreEqual(2, runs.Count);

// Мы также можем вставить узел в RunCollection вручную.
Run newRun = new Run(doc, "Run 3. ");
runs.Insert(3, newRun);

Assert.True(runs.Contains(newRun));
Assert.AreEqual("Run 1. Run 2. Run 3.", doc.GetText().Trim());

// Получите доступ к отдельным прогонам и удалите их, чтобы удалить их текст из документа.
Run run = runs[1];
runs.Remove(run);

Assert.AreEqual("Run 1. Run 3.", doc.GetText().Trim());
Assert.NotNull(run);
Assert.False(runs.Contains(run));

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