Class CompositeNode

Class CompositeNode

Название пространства: Aspose.Note Ассоциация: Aspose.Note.dll (25.4.0)

Основной генерический класс для узлов, которые могут содержать другие узлы.

public abstract class CompositeNode<T> : CompositeNodeBase, INode, ICompositeNode<T>, ICompositeNode, IEnumerable<T>, IEnumerable where T : INode
   {
       public void Add(T node)
       {
           if (node == null)
               throw new ArgumentNullException("node");
           _children.Add(node);
       }
       protected override void OnChildAdded(INode child)
       {
           base.OnChildAdded(child);
           foreach (var c in ChildNodes)
               c.Parent = this;
       }
   }

Типы параметров

T

Тип элементов в композитном узле.

Inheritance

object Node CompositeNodeBase CompositeNode

Implements

INode , ICompositeNode , ICompositeNode , IEnumerable , IEnumerable

Наследованные члены

CompositeNodeBase.GetChildNodes(NodeType) , CompositeNodeBase.GetChildNodes() , CompositeNodeBase.CheckDocument(Node) , Node.Accept(DocumentVisitor) , Node.Document , Node.IsComposite , Node.NodeType , Node.ParentNode , Node.PreviousSibling , Node.NextSibling , object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Constructors

Композитный нод (Node Type)

Инициализует новую инстанцию класса Aspose.Note.CompositeNode`1.

protected CompositeNode(NodeType nodeType)
   {
   }

Parameters

nodeType NodeType

Тип нода.

Properties

FirstChild

Получите первый детский узл этого узла.

public T FirstChild
   {
      get;
   }

Стоимость недвижимости

T

Examples

Показывает, как проверить, является ли страница конфликтной страницей (т.е. она имеет изменения, которые OneNote не может автоматически сливаться).

string dataDir = RunExamples.GetDataDir_Pages();
   Document doc = new Document(dataDir + "Aspose.one", new LoadOptions { LoadHistory = true });
   var history = doc.GetPageHistory(doc.FirstChild);
   for (int i = 0; i < history.Count; i++)
   {
       var historyPage = history[i];
       Console.Write("    {0}. Author: {1}, {2:dd.MM.yyyy hh.mm.ss}",
                     i,
                     historyPage.PageContentRevisionSummary.AuthorMostRecent,
                     historyPage.PageContentRevisionSummary.LastModifiedTime);
       Console.WriteLine(historyPage.IsConflictPage ? ", IsConflict: true" : string.Empty);
       if (historyPage.IsConflictPage)
           historyPage.IsConflictPage = false;
   }
   doc.Save(dataDir + "ConflictPageManipulation_out.one", SaveFormat.One);

IsComposite

Проверьте, сложен ли узл. Если он прав, то у узла могут быть детские узлы.

public override sealed bool IsComposite
   {
      get;
   }

Стоимость недвижимости

bool

LastChild

Получите последний детский узл этого узла.

public T LastChild
   {
      get;
   }

Стоимость недвижимости

T

Methods

Принятие документа (Document Visitor)

Принимает посетителя нода.

public override void Accept(Aspose.Words.DocumentVisitor visitor)
   {
   }

Parameters

visitor DocumentVisitor

Объект класса, полученный из Aspose.Note.DocumentVisitor.

AppendChildFirstТ1

Добавьте уголок к передней части списка детских узлов для этого угла.

public virtual T AppendChildFirst<T>(T newChild) where T : this.T
   {
   }

Parameters

newChild T1

Нод для добавления.

Returns

T1

добавленный нод.

Типы параметров

T1

Точный тип добавленного узла.

AppendChildLastТ1

Добавьте узел к концу списка детских узлов для этого уза.

public override T AppendChildLast<t1>(t1 newChild) where t1 : t
   {
   }

Parameters

newChild T1

Нод для добавления.

Returns

T1

добавленный нод.

Типы параметров

T1

Точный тип добавленного узла.

Название: GetChildNodes (NodeType)

Получите все детские узлы по типу узла.

[Obsolete("Use GetChildNodes<t>() method instead.")]
   public override List<inode> GetChildNodes(NodeType type)
   {
   }

Parameters

type NodeType

Тип нода .

Returns

List • < INode >

Список детских узлов.

GetChildNodes()

Получите все детские узлы по типу узла.

public override List<t1> GetChildNodes<t1>() where T1 : class, INode
   {
   }

Returns

List

Список детских узлов.

Типы параметров

T1

Тип элементов в возвращенном списке.

Examples

Показать, как получить изображение из документа.

string dataDir = RunExamples.GetDataDir_Images();
   Document oneFile = new Document(dataDir + "Aspose.one");
   IList<aspose.note.Image> nodes = oneFile.GetChildNodes<aspose.note.Image>();
   foreach (Aspose.Note.Image image in nodes)
   {
      using (MemoryStream stream = new MemoryStream(image.Bytes))
      {
         using (Bitmap bitMap = new Bitmap(stream))
         {
            bitMap.Save(String.Format(dataDir + "{0}", Path.GetFileName(image.FileName)));
         }
      }
   }

Показать, как получить мета-информацию изображения.

string dataDir = RunExamples.GetDataDir_Images();
   Document oneFile = new Document(dataDir + "Aspose.one");
   IList<aspose.note.Image> images = oneFile.GetChildNodes<aspose.note.Image>();
   foreach (Aspose.Note.Image image in images)
   {
       Console.WriteLine("Width: {0}", image.Width);
       Console.WriteLine("Height: {0}", image.Height);
       Console.WriteLine("OriginalWidth: {0}", image.OriginalWidth);
       Console.WriteLine("OriginalHeight: {0}", image.OriginalHeight);
       Console.WriteLine("FileName: {0}", image.FileName);
       Console.WriteLine("LastModifiedTime: {0}", image.LastModifiedTime);
       Console.WriteLine();
   }

Официальный номер()

Возвращает перечень, который итерирует через детские узлы Aspose.Note.CompositeNode`1.

public IEnumerator<t> GetEnumerator()
   {
   }

Returns

IEnumerator

Иеномериатор1 for the Aspose.Note.CompositeNode1.

InsertChild(в том числе и Т1)

Введите узел в указанное положение в списке детских узлов для этого уза.

public virtual T InsertChild<T>(int index, T newChild) where T : baseType
   {
   }

Parameters

i int

Позиция для ввода

newChild T1

Нод для ввода.

Returns

T1

добавленный нод.

Типы параметров

T1

Точный тип вложенного узла.

Размер интерьера (инт, IEnumerable))

Введите последовательность узла, начиная с указанного положения, в список детских узлов для этого уголока.

public void InsertChildrenRange(int i, IEnumerable<t> newChildren)
   {
   }

Parameters

i int

Позиция для ввода

newChildren IEnumerable

Следует ввести последовательность узлов.

ИнстертChildrenRange(int, params T)[])

Введите последовательность узла, начиная с указанного положения, в список детских узлов для этого уголока.

public void InsertChildrenRange(int i, params T[] newChildren)
   {
   }

Parameters

i int

Позиция для ввода

newChildren Т [ ]

Следует ввести последовательность узлов.

RemoveChildТ1

Удаление детского узла.

public T RemoveChild<T>(T oldChild) where T : T1
   {
   }

Parameters

oldChild T1

Нод для удаления.

Returns

T1

Удаленный нод

Типы параметров

T1

Точный тип удаленного узла.

 Русский