WinアプリケーションのすべてのフォームでTabIndexを「tab」から「enter」に変更するにはどうすればよいですか。次のようなすべてのテキストボックスにイベントを使用できることを知っています。
If (Keys.Enter Then) {
SendKeys.Send("{TAB}")
}
しかし、私はこれを1000回やりたくありません。すべてのテキストボックスとフォームに対してデフォルトでこれを作成できますか?
フォームのKeyPreviewプロパティを有効にしてみてください。そうすれば、コントロールがキーストロークを取得する前にキーストロークを処理できるようになります
private void Form_KeyDown(object sender, KeyEventArgs e)
{
if(Keys.Enter == e.KeyCode)
{
SendKeys.Send("{TAB}");
e.Handled = true;//set to false if you need that textbox gets enter key
}
}
すべてのテキストボックスをイベント「validation」(またはそのようなもの)にバインドしてから、ジャンプを実行する同じメソッドを呼び出すことができます:)