Catel.MVVM.CommandManagerWrapper.OnKeyDown C# (CSharp) Метод

OnKeyDown() приватный Метод

private OnKeyDown ( object sender, global::Windows.UI.Xaml.Input.KeyRoutedEventArgs e ) : void
sender object
e global::Windows.UI.Xaml.Input.KeyRoutedEventArgs
Результат void
        private void OnKeyDown(object sender, KeyEventArgs e)
        {
            if (_commandManager.IsKeyboardEventsSuspended)
            {
                return;
            }

            if (e.Handled)
            {
                // Don't get in the way of already handled KeyDown events
                return;
            }

            // TODO: consider caching or something like that
            var commandNames = _commandManager.GetCommands();

            foreach (var commandName in commandNames)
            {
                bool keyHandled = false;

                var inputGesture = _commandManager.GetInputGesture(commandName);
                if (inputGesture != null)
                {
                    if (inputGesture.Matches(e))
                    {
                        keyHandled = true;
                        _commandManager.ExecuteCommand(commandName);
                        break;
                    }
                }

                if (keyHandled)
                {
                    e.Handled = true;
                }
            }
        }
    }