のタブキーでナビゲートするときに、フォーカスされたセルを手動で管理するDataGridViewがあります。たとえば、最後の行の最初のセルがDataGridView内でナビゲートできる最後のセルであるときは、これを押してください。Tab次のフォーカス可能なコントロール(ボタン)にフォーカスを移動します。'Tab'キーを押したときに次のコントロールにフォーカスする
SendKeys.Send(「{TAB}」は)動作しません - 焦点は
のタブキーでナビゲートするときに、フォーカスされたセルを手動で管理するDataGridViewがあります。たとえば、最後の行の最初のセルがDataGridView内でナビゲートできる最後のセルであるときは、これを押してください。Tab次のフォーカス可能なコントロール(ボタン)にフォーカスを移動します。'Tab'キーを押したときに次のコントロールにフォーカスする
SendKeys.Send(「{TAB}」は)動作しません - 焦点は
あなたはSelectNextControl方法を試してみましたが、最後の行の2番目のセルに行くのだろうか?あなたがTrueにStandardTab
プロパティを設定した場合
Control nextControl = this.dataGridView1.Parent.GetNextControl(this.dataGridView1, true);
Control prevControl = this.dataGridView1.Parent.GetNextControl(this.dataGridView1, false);
は、Tabキーの動作は、フォーム上の次のコントロールに移動するには次のグリッドセルに移動するから変更されます。これはあなたが望むものかもしれません。
グリッドセル/列/行にフォーカスが当てられるようにする場合は、コード内でProcessDialogKey
とProcessDataGridViewKey
イベントを処理できます。
Rune Grimstad氏によると、デフォルトで提供されているタブの動作やStandardTab以外のタブの動作が必要な場合は、独自のタブ動作を実装する必要があります。
DataGridViewから継承する新しいクラスを作成します。
protected override bool ProcessDialogKey(Keys keyData)
{
case Keys.Tab | Keys.Shift:
// implement your logic here.
break;
case Keys.Tab:
// implement your logic here.
break;
}
DataGridView's StandardTab propertyを使用できます。
dataGridView1.StandardTab = true;
ユーザーがCTRL +TAB組み合わせで非StandardTabでこれを行うことに注意してください、StandardTabはこの動作を反転させます。
これは受け入れられた回答である必要がありますように見えます... – NobodysNightmare