public static void RemoveAutomationFocusChangedEventHandler(AutomationFocusChangedEventHandler eventHandler) { Utility.ValidateArgumentNonNull(eventHandler, "eventHandler"); try { FocusEventListener listener = (FocusEventListener)ClientEventList.Remove(AutomationElement.AutomationFocusChangedEvent, null, eventHandler); Factory.RemoveFocusChangedEventHandler(listener); } catch (System.Runtime.InteropServices.COMException e) { Exception newEx; if (Utility.ConvertException(e, out newEx)) { throw newEx; } else { throw; } } }
public static void AddAutomationFocusChangedEventHandler(AutomationFocusChangedEventHandler eventHandler) { Utility.ValidateArgumentNonNull(eventHandler, "eventHandler"); try { FocusEventListener listener = new FocusEventListener(eventHandler); Factory.AddFocusChangedEventHandler(CacheRequest.CurrentNativeCacheRequest, listener); ClientEventList.Add(listener); } catch (System.Runtime.InteropServices.COMException e) { Exception newEx; if (Utility.ConvertException(e, out newEx)) { throw newEx; } else { throw; } } }