Automation.AddAutomationFocusChangedEventHandler Method (AutomationFocusChangedEventHandler)


Registers a method that will handle focus-changed events.

Namespace:   System.Windows.Automation
Assembly:  UIAutomationClient (in UIAutomationClient.dll)

public static void AddAutomationFocusChangedEventHandler(
	AutomationFocusChangedEventHandler eventHandler


Type: System.Windows.Automation.AutomationFocusChangedEventHandler

The method to call when the event occurs.

Focus-changed events are system-wide; you cannot set a narrower scope.

eventHandler can be an instance of the method, or a reference to the method (AddressOf in Visual Basic).

The following example shows this method being used to add an event handler for focus changes.

AutomationFocusChangedEventHandler focusHandler = null;

/// <summary>
/// Create an event handler and register it.
/// </summary>
public void SubscribeToFocusChange()
    focusHandler = new AutomationFocusChangedEventHandler(OnFocusChange);

/// <summary>
/// Handle the event.
/// </summary>
/// <param name="src">Object that raised the event.</param>
/// <param name="e">Event arguments.</param>
private void OnFocusChange(object src, AutomationFocusChangedEventArgs e)
    // TODO Add event handling code.
    // The arguments tell you which elements have lost and received focus.

/// <summary>
/// Cancel subscription to the event.
/// </summary>
public void UnsubscribeFocusChange()
    if (focusHandler != null)

.NET Framework
Available since 3.0
Return to top