public bool PreFilterKey (KeyFilterData key) { bool alt = (key.ModifierKeys & Keys.Alt) != 0; bool control = (key.ModifierKeys & Keys.Control) != 0; bool shift = (key.ModifierKeys & Keys.Shift) != 0; System.Windows.Automation.KeyEventArgs eventArgs = new System.Windows.Automation.KeyEventArgs (key.Down, key.keycode, key.keysym, key.str, alt, control, shift); AutomationInteropProvider.RaiseAutomationEvent (AutomationElementIdentifiers.KeyEvent, null, eventArgs); return eventArgs.SuppressKeyPress; }
internal static bool FilterKey(KeyFilterData key) { lock (key_filters) { for (int i = 0; i < key_filters.Count; i++) { IKeyFilter filter = (IKeyFilter)key_filters[i]; if (filter.PreFilterKey(key)) { return(true); } } } return(false); }
internal static bool FilterKey (KeyFilterData key) { lock (key_filters) { for (int i = 0; i < key_filters.Count; i++) { IKeyFilter filter = (IKeyFilter) key_filters[i]; if (filter.PreFilterKey (key)) return true; } } return false; }