SilverlightプロジェクトのMVVMでキーを押すことをどのようにシミュレートしますか?
ユーザーがEnterキーを押したときにTabキーを押すのを同時に実行したいので、次のテキストボックスに移動します
SilverlightプロジェクトのMVVMでキーを押すことをどのようにシミュレートしますか?
ユーザーがEnterキーを押したときにTabキーを押すのを同時に実行したいので、次のテキストボックスに移動します
ここで何を達成しようとしているのかによりますか?キーが押されたときに実行されるのと同じコードを実行しようとしている場合は、これを許可するようにコードを構造化してください。
UIコントロールの自動化、キーおよびマウスイベントのシミュレーションについては、MSDNを参照してください。
どのキーが押されたかを確認できるKeyUp
イベントを処理するだけです。次に、次のコントロールのFocus メソッドを呼び出します。Handled プロパティをに設定することを忘れないでくださいtrue
。
サンプルコード:
// Handler for TextBox1
private void OnKeyDownHandler(object sender, KeyEventArgs e)
{
if (e.Key == Key.Return)
{
TextBox2.Focus();
e.Handled = true;
}
}
TabIndex プロパティを使用して、次のフォーカス可能な要素を見つけるために、すべてのコントロールを反復処理することも検討してください。
配線を簡素化するために、すべてをアタッチ可能な動作でラップすることもできます。