バーコード スキャナーからの入力を受け入れる画面を WPF で作成しました。PreviewTextInput イベントと KeyUp イベントをリッスンします。これにより、スキャナが何を入力し、いつ終了したかを判断できます。それはうまくいきます。フォームを表示するだけで、バーコード スキャンを受け入れることができます。
問題は、ページに他のコントロールがあり、それらが問題を引き起こしていることです。たとえば、フォームのボタンを押すと、そのボタンにフォーカスがあります。その時点から Enter キーを押すと、ボタン イベント ハンドラが起動されます。自動的にフォーカスを放棄しません。
この種の問題に対するエレガントな解決策を知っている人はいますか? すべてのイベント ハンドラーにコードを追加して別の要素にフォーカスするのは避けたいと思いますが、これは最後の手段として行います。