NextPreOrder

Node.NextPreOrder method

يحصل على العقدة التالية وفقًا لخوارزمية عبور شجرة الترتيب المسبق.

public Node NextPreOrder(Node rootNode)
معامليكتبوصف
rootNodeNodeالعقدة العلوية (الحد) للعبور.

قيمة الإرجاع

العقدة التالية في ترتيب الطلب المسبق. لا شيء إذا وصلت إلىrootNode.

أمثلة

يوضح كيفية التنقل عبر شجرة عقد المستند باستخدام خوارزمية التنقل حسب الطلب، وحذف أي شكل يتم مواجهته مع صورة.

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));

أنظر أيضا