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.

Automation.AddStructureChangedEventHandler أسلوب

Visual Studio 2010

قم بتسجيل الأسلوب الذي سيقوم بمعالجة أحداث تم تغييره على بنية.

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

public static void AddStructureChangedEventHandler(
	AutomationElement element,
	TreeScope scope,
	StructureChangedEventHandler eventHandler
)

المعلمات

element
النوع: System.Windows.Automation.AutomationElement
UI Automationالعنصر الذي إلى اقتران معالج حدث.
scope
النوع: System.Windows.Automation.TreeScope
نطاق الأحداث معالجة؛ التي هو، سواء كانت تشغيل العنصر نفسه، أو تتضمن أصولا والفروع الخاصة بها.
eventHandler
النوع: System.Windows.Automation.StructureChangedEventHandler
الأسلوب إلى الاتصال عند حدوث حدث تم تغييره لبنية.

eventHandlerيمكن أن يكون مثيلاً لها أسلوب، أو مرجع إلى أسلوب ( AddressOfفي Visual أساسى).

يلي مثال يبين تفويض معالج حدث تم تغييره لبنية سيتم تسمية كلما شجرة فرعية ل المحدد AutomationElementالتم تغييرهات.


/// <summary>
/// Handles structure-changed events. If a new app window has been added, this method ensures
/// it's in the list of runtime IDs and subscribed to window-close events.
/// </summary>
/// <param name="sender">Object that raised the event.</param>
/// <param name="e">Event arguments.</param>
/// <remarks>
/// An exception can be thrown by the UI Automation core if the element disappears
/// before it can be processed -- for example, if a menu item is only briefly visible. 
/// This exception cannot be caught here because it crosses native/managed boundaries. 
/// In the debugger, you can ignore it and continue execution. The exception does not cause
/// a break when the executable is being run.
/// </remarks>
private void OnStructureChanged(object sender, StructureChangedEventArgs e)
{
    AutomationElement element = sender as AutomationElement;

    if (e.StructureChangeType == StructureChangeType.ChildAdded)
    {
        Object windowPattern;
        if (false == element.TryGetCurrentPattern(WindowPattern.Pattern, out windowPattern))
        {
            return;
        }
        int[] rid = e.GetRuntimeId();
        if (RuntimeIdListed(rid, savedRuntimeIds) < 0)
        {
            AddToWindowHandler(element);
            savedRuntimeIds.Add(rid);
        }

    }
}


تعمل التعليمة البرمجية الموجودة في المثال التالي بإضافة مثيل للمفوض.


// elementRoot is an AutomationElement.
Automation.AddStructureChangedEventHandler(elementRoot, TreeScope.Children, 
    new StructureChangedEventHandler(OnStructureChanged));


نظام التشغيل 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
إظهار: