protected override bool CanInvoke(object sender, object eventArgs) { bool res = base.CanInvoke(sender, eventArgs); #if SILVERLIGHT if (KeyGesture == null || !(eventArgs is KeyEventArgs)) { return(res); } KeyEventArgs keyEventArgs = (KeyEventArgs)eventArgs; return(res && keyEventArgs.Key == KeyGesture.Key && Keyboard.Modifiers == KeyGesture.ModifierKeys); #elif NETFX_CORE if (keyGesture == null || !(eventArgs is KeyRoutedEventArgs)) { return(res); } KeyRoutedEventArgs keyEventArgs = (KeyRoutedEventArgs)eventArgs; return(res && keyEventArgs.Key == keyGesture.Key && ModifierKeysHelper.GetKeyboardModifiers() == keyGesture.ModifierKeys); #else if (KeyGesture == null || !(eventArgs is InputEventArgs)) { return(res); } InputEventArgs inputEventArgs = (InputEventArgs)eventArgs; return(res && KeyGesture.Matches(Source, inputEventArgs)); #endif }
protected override bool CanInvoke(object sender, object eventArgs) { bool res = base.CanInvoke(sender, eventArgs); if (ModifierKeys != null) #if !NETFX_CORE { res &= ModifierKeys == Keyboard.Modifiers; } #else { res &= ModifierKeys == ModifierKeysHelper.GetKeyboardModifiers(); } #endif return(res); }
bool IsCtrlPressed(KeyEventArgs e) { return(ModifierKeysHelper.IsShiftPressed(ModifierKeysHelper.GetKeyboardModifiers(e))); }