DataGridViewで、Enterキーを押した際に右に移動するようにする方法です。
この方法では、右矢印キーと同じ動きをしますので、一番右のセルが選択されているときに、Enterキーを押してもセルの移動は発生しません。
|
|
通常のDataGridViewのプロパティでは、こうした設定はありません。
そのため、DataGridViewを継承したクラスを作成し、そのイベントをオーバーライドして記述する必要があります。
|
|
Public Class CustomDataGridView
Inherits DataGridView
Protected Overrides Function ProcessDialogKey( _
ByVal keyData As Keys) As Boolean
'Enterキーが押された際に、右矢印キーが押されたことにし、
'それ以外のキーの場合は、通常どおり実行します。
If (keyData And Keys.KeyCode) = Keys.Enter Then
Return Me.ProcessRightKey(keyData)
Else
Return MyBase.ProcessDialogKey(keyData)
End If
End Function
Protected Overrides Function ProcessDataGridViewKey( _
ByVal e As KeyEventArgs) As Boolean
'Enterキーが押された際に、右矢印キーが押されたことにし、
'それ以外のキーの場合は、通常どおり実行します。
If e.KeyCode = Keys.Enter Then
Return Me.ProcessRightKey(e.KeyCode)
Else
Return MyBase.ProcessDataGridViewKey(e)
End If
End Function
End Class
|
|
|
上記クラスを作成し、一度プロジェクトをビルドしますと、ツールボックスに「CustomDataGridView」が表示されますので、それを使いましょう。
|