Вызов команды при нажатии клавиши «ENTER» В XAML

Я хочу вызывать команду при нажатии клавиши ENTER в TextBox . Рассмотрим следующий XAML:

    
     ...    
     
          
               
                    
               
          
         
     ...    

и MyCommand выглядит следующим образом:

public ICommand MyCommand {
     get { return new DelegateCommand(MyCommandExecute); }
}

private void MyCommandExecute(string s) { ... }

С вышеупомянутым моя команда вызывается при каждом нажатии клавиши. Как я могу ограничить команду, чтобы она вызывалась только при нажатии ENTER нажата клавиша?

Я понимаю, что с Expression Blend я могу использовать условия, но они, похоже, ограничены элементами и не могут учитывать аргументы событий.

Я также встречал SLEX , который предлагает свою собственную реализацию InvokeCommandAction , которая построена на основе реализации Systems.Windows.Interactivity и может делать то, что Мне нужно. Еще одно соображение - написать собственный триггер, но я надеюсь, что есть способ сделать это без использования внешних наборов инструментов.

15
задан bitxwise 29 January 2011 в 00:25
поделиться