NodeCollection
NodeCollection class
Belirli bir türdeki düğümlerin koleksiyonunu temsil eder.
Daha fazlasını öğrenmek için şu adresi ziyaret edin:Aspose.Words Belge Nesne Modeli (DOM) dokümantasyon makalesi.
public class NodeCollection : IEnumerable<Node>
Özellikleri
İsim | Tanım |
---|---|
Count { get; } | Koleksiyondaki düğüm sayısını alır. |
Item { get; } | Verilen dizindeki bir düğümü alır. |
yöntemler
İsim | Tanım |
---|---|
Add(Node) | Koleksiyonun sonuna bir düğüm ekler. |
Clear() | Tüm düğümleri bu koleksiyondan ve belgeden kaldırır. |
Contains(Node) | Bir düğümün koleksiyonda olup olmadığını belirler. |
GetEnumerator() | Düğümlerin koleksiyonu üzerinde basit bir “foreach” stili yinelemesi sağlar. |
IndexOf(Node) | Belirtilen düğümün sıfır tabanlı dizinini döndürür. |
Insert(int, Node) | Belirtilen dizindeki 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; yalnızca belirtilen türden bir düğüm seçimidir, ancak düğümler, ağaçta ilgili üst düğümleri altında depolanır.
NodeCollection
indekslenmiş erişimi, yinelemeyi destekler ve ekleme ve kaldırma yöntemleri sağlar.
NodeCollection
koleksiyon “canlıdır”, yani oluşturulduğu object düğümünün alt öğelerinde yapılan değişiklikler, koleksiyon tarafından döndürülen düğümlere anında yansıtılır.NodeCollection
özellikleri ve yöntemleri.
NodeCollection
tarafından iade edilirGetChildNodes
ve aynı zamanda aşağıdaki gibi yazılan düğüm koleksiyonları için temel sınıf görevi görür:SectionCollection
, ParagraphCollection
vesaire.
NodeCollection
“düz” olabilir ve oluşturulduğu düğümün yalnızca doğrudan alt öğelerini içerebilir veya “derin” olabilir ve tüm alt alt öğeleri içerebilir.
Örnekler
Tüm metin kutusu şekillerinin görüntü ş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