NodeCollection
NodeCollection class
Belirli bir türdeki düğümlerin bir koleksiyonunu temsil eder.
Daha fazla bilgi edinmek için şu adresi ziyaret edin:Aspose.Words Belge Nesne Modeli (DOM) belgeleme makalesi.
public class NodeCollection : IEnumerable<Node>
Özellikleri
İsim | Tanım |
---|---|
Count { get; } | Koleksiyondaki düğüm sayısını alır. |
Item { get; } | Belirtilen dizindeki bir düğümü alır. |
yöntemler
İsim | Tanım |
---|---|
Add(Node) | Koleksiyonun sonuna bir düğüm ekler. |
Clear() | Bu koleksiyondan ve belgeden tüm düğümleri kaldırır. |
Contains(Node) | Bir düğümün koleksiyonda olup olmadığını belirler. |
GetEnumerator() | Düğüm koleksiyonu üzerinde basit bir “foreach” tarzı yineleme sağlar. |
IndexOf(Node) | Belirtilen düğümün sıfır tabanlı dizinini döndürür. |
Insert(int, Node) | Belirtilen dizinde koleksiyona bir düğüm ekler. |
Remove(Node) | Düğümü koleksiyondan ve belgeden kaldırır. |
RemoveAt(int) | Belirtilen dizindeki düğümü koleksiyondan ve belgeden kaldırır. |
ToArray() | Koleksiyondaki tüm düğümleri yeni bir düğüm dizisine kopyalar. |
Notlar
NodeCollection
içerdiği düğümlerin sahibi değildir, bunun yerine belirtilen türdeki nodes düğümlerinin bir seçimidir, ancak düğümler ağaçta kendi üst düğümlerinin altında saklanır.
NodeCollection
dizinli erişimi, yinelemeyi destekler ve ekleme ve kaldırma yöntemleri sağlar.
TheNodeCollection
koleksiyon “canlıdır”, yani oluşturulduğu object düğümünün çocuklarında yapılan değişiklikler, tarafından döndürülen düğümlere hemen yansıtılırNodeCollection
özellikleri ve yöntemleri.
NodeCollection
tarafından iade edilirGetChildNodes
ve ayrıca şu türdeki düğüm koleksiyonları için bir temel sınıf görevi görür:SectionCollection
, ParagraphCollection
vesaire.
NodeCollection
“düz” olabilir ve yalnızca oluşturulduğu düğümün doğrudan alt öğelerini içerebilir veya “derin” olabilir ve tüm alt öğeleri içerebilir.
Örnekler
Tüm metin kutusu şekillerinin resim şekilleriyle nasıl değiştirileceğini gösterir.
Document doc = new Document(MyDir + "Textboxes in drawing canvas.docx");
Shape[] shapes = doc.GetChildNodes(NodeType.Shape, true).OfType<Shape>().ToArray();
Assert.AreEqual(3, shapes.Count(s => s.ShapeType == ShapeType.TextBox));
Assert.AreEqual(1, shapes.Count(s => s.ShapeType == ShapeType.Image));
foreach (Shape shape in shapes)
{
if (shape.ShapeType == ShapeType.TextBox)
{
Shape replacementShape = new Shape(doc, ShapeType.Image);
replacementShape.ImageData.SetImage(ImageDir + "Logo.jpg");
replacementShape.Left = shape.Left;
replacementShape.Top = shape.Top;
replacementShape.Width = shape.Width;
replacementShape.Height = shape.Height;
replacementShape.RelativeHorizontalPosition = shape.RelativeHorizontalPosition;
replacementShape.RelativeVerticalPosition = shape.RelativeVerticalPosition;
replacementShape.HorizontalAlignment = shape.HorizontalAlignment;
replacementShape.VerticalAlignment = shape.VerticalAlignment;
replacementShape.WrapType = shape.WrapType;
replacementShape.WrapSide = shape.WrapSide;
shape.ParentNode.InsertAfter(replacementShape, shape);
shape.Remove();
}
}
shapes = doc.GetChildNodes(NodeType.Shape, true).OfType<Shape>().ToArray();
Assert.AreEqual(0, shapes.Count(s => s.ShapeType == ShapeType.TextBox));
Assert.AreEqual(4, shapes.Count(s => s.ShapeType == ShapeType.Image));
doc.Save(ArtifactsDir + "Shape.ReplaceTextboxesWithImages.docx");
Ayrıca bakınız
- class Node
- ad alanı Aspose.Words
- toplantı Aspose.Words