PreviousPreOrder

Node.PreviousPreOrder method

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

public Node PreviousPreOrder(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));

أنظر أيضا