Переопределить стандартные сочетания клавиш в списке - PullRequest
2 голосов
/ 02 августа 2010

В настоящее время у меня есть список в wpf c # и я добавил некоторые сочетания клавиш в обработчик событий keydown моего главного окна.Это обработчики событий для пробела и клавиш вверх / вниз.Однако, когда мой список имеет фокус, эти привязки не инициируются.Как я могу отключить эти комбинации клавиш по умолчанию (без ввода e.handle = true, чтобы отключить весь ход нажатия клавиш) для этого элемента управления и запустить свой собственный код?

1 Ответ

1 голос
/ 02 августа 2010

Привязки клавиш по умолчанию не используют события напрямую, а команды. Что вы можете сделать, это определить команды и прикрепить к ним события.

<Window.Resources> 
 <CommandBinding  x:Key="NewBinding" Command="ApplicationCommands.New"   
  Executed="NewCommand" CanExecute="CanExecuteNew"> 
 </CommandBinding> 
</Window.Resources> 


<ListBox.CommandBindings> 
 <StaticResource  ResourceKey="NewBinding"></StaticResource>   
</ListBox.CommandBindings> 

Чтобы переопределить комбинации клавиш по умолчанию, синтаксис:

<Window.InputBindings>
 <KeyBinding Key="" Modifiers="" Command="" />
</Window.InputBindings>

Если вы новичок в этом, попробуйте получить некоторый обзор Обзор команд WPF и Расширенный WPF вам будет трудно сделать это с событиями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...