This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

TreeWalker المنشئ

Visual Studio 2010

تهيئة مثيل جديد من فئة ال TreeWalker.

مساحة الاسم:  System.Windows.Automation
التجميع:  UIAutomationClient (في UIAutomationClient.dll)

public TreeWalker(
	Condition condition
)

المعلمات

condition
النوع: System.Windows.Automation.Condition
طريقة عرض UI Automationشجرة العنصر التي TreeWalkerسوف تنتقل.

UI Automationالعناصر التي لا تطابقconditionيتم تخطي عبر متىTreeWalkerهو المستخدمة للتنقل في شجرة عنصر.

إذا حاول تطبيق العميل إلى البحث عن العناصر في واجهة مستخدم الخاصة به، يجب أن تجعل الجميع UI Automationالمكالمات تشغيل مؤشر ترابط منفصلة.

يلي مثال يوضح كيف يمكنك بناء TreeWalkerالتي تنتقل فقط بين العناصر الممكنة.


/// <summary>
/// Walks the UI Automation tree and adds the control type of each enabled control 
/// element it finds to a TreeView.
/// </summary>
/// <param name="rootElement">The root of the search on this iteration.</param>
/// <param name="treeNode">The node in the TreeView for this iteration.</param>
/// <remarks>
/// This is a recursive function that maps out the structure of the subtree beginning at the
/// UI Automation element passed in as rootElement on the first call. This could be, for example,
/// an application window.
/// CAUTION: Do not pass in AutomationElement.RootElement. Attempting to map out the entire subtree of
/// the desktop could take a very long time and even lead to a stack overflow.
/// </remarks>
private void WalkEnabledElements(AutomationElement rootElement, TreeNode treeNode)
{
    Condition condition1 = new PropertyCondition(AutomationElement.IsControlElementProperty, true);
    Condition condition2 = new PropertyCondition(AutomationElement.IsEnabledProperty, true);
    TreeWalker walker = new TreeWalker(new AndCondition(condition1, condition2));
    AutomationElement elementNode = walker.GetFirstChild(rootElement);
    while (elementNode != null)
    {
        TreeNode childTreeNode = treeNode.Nodes.Add(elementNode.Current.ControlType.LocalizedControlType);
        WalkEnabledElements(elementNode, childTreeNode);
        elementNode = walker.GetNextSibling(elementNode);
    }
}


نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008, نظام التشغيل Windows Server 2003

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0

NET Framework. Client Profile

مدعوم في: 4
إظهار: