私のウィンドウの "Up"キーを私のViewModelでコマンドを実行するように再バインドしたいとします。WPF:テキストボックスで飲み込まれないWindowにKeyBindingを持たせる方法
私のウィンドウには2つのコントロールListView、TextBoxがあります。
私は
<Window.InputBindings>
<KeyBinding Key="F5" Command={Binding SomeCommand} />
</Window.InputBindings>
をすればすべてが正常に動作します。しかし、 "Up"または他の特定のキーに設定すると、TextBoxにフォーカスがある場合はコマンドが実行されません。これはTextBoxがこれらのキーを処理しており、コマンドをトリガーするイベントを飲み込んでいることを示しています。それを防止し、プレビューイベント(PreviewKeyUp
)に似たウィンドウを表示する方法はありますか?あなたは、アプリケーションレベルのショートカットが必要な場合
この設定では、私は手動でキーをマップし、 'commands [matchingCommandKey] .Execute(parameter)'のようなことをしましたか?私は 'InputManager'を使わずに今のところこれに似たものを手に入れました。私は単にウィンドウでPreviewKeyPressを使うだけですが、コマンドフレームワークを活用しようと考えていました。 – Kir
はい。フォーカス/キャプチャの問題を避けるためにInputManagerを使用していました。アプリケーション全体をクロスカットしているようです。 – Eric