レピュテーションポイントが10点もなかったため、システムで回答できなかったため、8時間待たなければならなかったため、先に回答しませんでした。
これは私がタイプしたものですが、それは私がそれを作る方法がわからない何かをそこで宣言する必要があるようです。
this.AddHandler(UIElement.KeyUpEvent, new RoutedEventHandler(KeyUp), true);
エラーメッセージは
デリゲートWindows.UI.Xaml.RoutedEventHandlerルーティングされたイベントを処理するメソッドを表します。エラー:「KeyUp」のオーバーロードはデリゲート「Windows.UI.Xaml.RoutedEventHandler」と一致しません。
イベントハンドラーとして機能する関数の形式は次のとおりです。
private void KeyUp(object sender, KeyRoutedEventArgs e)
{
}
私は自分の問題を回避する方法を見つけました。誰かがそれを必要とする場合に備えて、それをあなたと共有したいと思いますが、誰かが私に知らせるためのより良い方法を知っている場合。
ページの表示領域の外にボタンを配置し、そのKeyUpイベントを使用して、常にアクティブになるようにコードを記述しました。以下に私のコードがあります。
public frmMain()
{
this.InitializeComponent();
btnKeboardCollector.Loaded += MyBoard_Loaded;
btnKeboardCollector.LostFocus += btnKeboardCollector_LostFocus;
btnKeboardCollector.KeyUp += KeyUpHandler;
}
void MyBoard_Loaded(object sender, RoutedEventArgs e)
{
// I do other initialization here
btnKeboardCollector.Focus(Windows.UI.Xaml.FocusState.Programmatic);
}
void btnKeboardCollector_LostFocus(object sender, RoutedEventArgs e)
{
btnKeboardCollector.Focus(Windows.UI.Xaml.FocusState.Programmatic);
}
private void KeyUpHandler(object sender, KeyRoutedEventArgs e)
{
}