Item

NodeCollection indexer

Récupère un nœud à l’index donné.

public Node this[int index] { get; }
ParamètreLa description
indexUn index dans la collection de nœuds.

Remarques

L’indice est basé sur zéro.

Les index négatifs sont autorisés et indiquent l’accès depuis l’arrière de la collection. Par exemple, -1 signifie le dernier élément, -2 signifie l’avant-dernier et ainsi de suite.

Si l’index est supérieur ou égal au nombre d’éléments dans la liste, cela renvoie une référence nulle.

Si l’index est négatif et que sa valeur absolue est supérieure au nombre d’éléments dans la liste, cela renvoie une référence nulle.

Exemples

Montre comment parcourir la collection de nœuds enfants d’un nœud composite.

Document doc = new Document();

// Ajoutez deux exécutions et une forme en tant que nœuds enfants au premier paragraphe de ce document.
Paragraph paragraph = (Paragraph)doc.GetChild(NodeType.Paragraph, 0, true);
paragraph.AppendChild(new Run(doc, "Hello world! "));

Shape shape = new Shape(doc, ShapeType.Rectangle);
shape.Width = 200;
shape.Height = 200;
// Notez que le « CustomNodeId » n'est pas enregistré dans un fichier de sortie et n'existe que pendant la durée de vie du nœud.
shape.CustomNodeId = 100;
shape.WrapType = WrapType.Inline;
paragraph.AppendChild(shape);

paragraph.AppendChild(new Run(doc, "Hello again!"));

// Parcourir la collection d'enfants immédiats du paragraphe,
// et imprimez toutes les séquences ou formes que nous trouvons à l'intérieur.
NodeCollection children = paragraph.GetChildNodes(NodeType.Any, false);

Assert.AreEqual(3, paragraph.GetChildNodes(NodeType.Any, false).Count);

foreach (Node child in children)
    switch (child.NodeType)
    {
        case NodeType.Run:
            Console.WriteLine("Run contents:");
            Console.WriteLine($"\t\"{child.GetText().Trim()}\"");
            break;
        case NodeType.Shape:
            Shape childShape = (Shape)child;
            Console.WriteLine("Shape:");
            Console.WriteLine($"\t{childShape.ShapeType}, {childShape.Width}x{childShape.Height}");
            break;
    }

Voir également