Ctrl + пробел CommandBinding - PullRequest
       10

Ctrl + пробел CommandBinding

3 голосов
/ 26 ноября 2009

Я обрабатываю команды внутри класса RoutedCommand, который реализует RoutedUICommand. Это поможет мне заблокировать или переопределить команду, проверив их CanExecute и Execute, если это необходимо. Я могу переопределить EditingCommand, ApplicationCommand и т. Д. Одной из команд, которые я даже не могу обработать, является Ctr + пробел. Это MediaCommand или некоторые другие типы, которые я не могу найти? Я предполагаю, что это было обработано где-то еще, и поэтому я не могу это контролировать.

Ответы [ 2 ]

2 голосов
/ 09 апреля 2010

Вы можете создать свою собственную пользовательскую команду или просто добавить новый жест для предварительно определенной команды, например ::

public Window1()
    {
        InitializeComponent();
        ApplicationCommands.Find.InputGestures.Add(new KeyGesture(Key.Space, ModifierKeys.Control));
        CommandBinding commandBinding = new CommandBinding(ApplicationCommands.Find, myCommandHandler);
        this.CommandBindings.Add(commandBinding);
    }

    private void myCommandHandler(object sender, ExecutedRoutedEventArgs args)
    {
        MessageBox.Show("Command invoked!");
    }
0 голосов
/ 26 ноября 2009

У меня нет большого опыта использования команд WPF, но попробуйте создать свои собственные команды для Ctrl и Пробел.

Смотрите этот урок: http://www.switchonthecode.com/tutorials/wpf-tutorial-command-bindings-and-custom-commands

...