PreviousPreOrder

Node.PreviousPreOrder method

Ottiene il nodo precedente in base all’algoritmo di attraversamento dell’albero di preordine.

public Node PreviousPreOrder(Node rootNode)
Parametro Tipo Descrizione
rootNode Node Il nodo superiore (limite) di attraversamento.

Valore di ritorno

Nodo precedente in ordine di preordine. Null se raggiunto il rootNode.

Esempi

Mostra come attraversare l’albero dei nodi del documento utilizzando l’algoritmo di preordine traversal ed eliminare qualsiasi forma incontrata con un’immagine.

Document doc = new Document(MyDir + "Images.docx");

Assert.AreEqual(9, 
    doc.GetChildNodes(NodeType.Shape, true).OfType<Shape>().Count(s => s.HasImage));

Node curNode = doc;
while (curNode != null)
{
    Node nextNode = curNode.NextPreOrder(doc);

    if (curNode.PreviousPreOrder(doc) != null && nextNode != null)
        Assert.AreEqual(curNode, nextNode.PreviousPreOrder(doc));

    if (curNode.NodeType == NodeType.Shape && ((Shape)curNode).HasImage)
        curNode.Remove();

    curNode = nextNode;
}

Assert.AreEqual(0,
    doc.GetChildNodes(NodeType.Shape, true).OfType<Shape>().Count(s => s.HasImage));

Guarda anche