private void OnAcceleratorKeyPressed(object sender, WebViewControlAcceleratorKeyPressedEventArgs e)
        {
            if (e.EventType != CoreAcceleratorKeyEventType.KeyDown &&
                e.EventType != CoreAcceleratorKeyEventType.SystemKeyDown &&
                AssociatedObject.InputBindings.Count == 0)
            {
                return;
            }

            e.Handled = true;
            if (e.VirtualKey.IsModifierKey())
            {
                _modifierKey = e.VirtualKey.GetModifierKey();
                return;
            }

            if (Enum.TryParse(e.VirtualKey.ToString(), out Key key))
            {
                foreach (KeyBinding keyBinding in AssociatedObject.InputBindings)
                {
                    if (_modifierKey == keyBinding.Modifiers && key == keyBinding.Key)
                    {
                        keyBinding.Command.Execute(keyBinding.CommandParameter);
                    }
                }
            }

            _modifierKey = ModifierKeys.None;
        }
Esempio n. 2
0
 private void Edge_AcceleratorKeyPressed(object sender, WebViewControlAcceleratorKeyPressedEventArgs e)
 {
     OnPreviewKeyDown(new PreviewKeyDownEventArgs((Keys)e.VirtualKey));
 }