CustomPartCollection

CustomPartCollection class

Представляет наборCustomPart объекты.

public class CustomPartCollection : IEnumerable<CustomPart>

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

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

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

Имя Описание
Count { get; } Получает количество элементов, содержащихся в коллекции.
Item { get; set; } Получает или задает элемент по указанному индексу.

Методы

Имя Описание
Add(CustomPart) Добавляет элемент в коллекцию.
Clear() Удаляет все элементы из коллекции.
Clone() Создает полную копию этой коллекции и ее элементов.
GetEnumerator() Возвращает объект перечислителя, который можно использовать для перебора всех элементов в коллекции.
RemoveAt(int) Удаляет элемент по указанному индексу.

Примечания

Обычно вам не нужно создавать экземпляры этого класса. Вы получаете доступ к пользовательским частям , связанным с пакетом OOXML, черезPackageCustomParts имущество.

Примеры

Показывает, как получить доступ к коллекции произвольных пользовательских частей документа.

Document doc = new Document(MyDir + "Custom parts OOXML package.docx");

Assert.AreEqual(2, doc.PackageCustomParts.Count);

// Клонируем вторую часть, затем добавляем клон в коллекцию.
CustomPart clonedPart = doc.PackageCustomParts[1].Clone();
doc.PackageCustomParts.Add(clonedPart);
Assert.AreEqual(3, doc.PackageCustomParts.Count);

// Перечисляем коллекцию и печатаем каждую часть.
using (IEnumerator<CustomPart> enumerator = doc.PackageCustomParts.GetEnumerator())
{
    int index = 0;
    while (enumerator.MoveNext())
    {
        Console.WriteLine($"Part index {index}:");
        Console.WriteLine($"\tName:\t\t\t\t{enumerator.Current.Name}");
        Console.WriteLine($"\tContent type:\t\t{enumerator.Current.ContentType}");
        Console.WriteLine($"\tRelationship type:\t{enumerator.Current.RelationshipType}");
        Console.WriteLine(enumerator.Current.IsExternal ?
            "\tSourced from outside the document" :
            $"\tStored within the document, length: {enumerator.Current.Data.Length} bytes");
        index++;
    }
}

// Мы можем удалить элементы из этой коллекции по отдельности или все сразу.
doc.PackageCustomParts.RemoveAt(2);

Assert.AreEqual(2, doc.PackageCustomParts.Count);

doc.PackageCustomParts.Clear();

Assert.AreEqual(0, doc.PackageCustomParts.Count);

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