データグリッドの最終列で一行上の先頭セルへ移動する方法


すり  2005-06-24 21:33:29  No: 123029

VB.NETのデータグリッドで、ENTERキーにより次(右)のセルへ移動する
方法は(インターネット上のサンプルコードを参考にして、)
データグリッドの派生クラスを作成し、次のコードで実現できました。

Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean

        If msg.WParam.ToInt32() = CInt(Keys.Enter) Then

            SendKeys.Send("{Tab}")

            Return True

        End If

        Return MyBase.ProcessCmdKey(msg, keyData)

    End Function

最終列以外ではこれでOKなのですが、今回は最終列で一行上の先頭セルへ
移動させたいので、
最終列以外=TABキーを強制送信
最終列=SHIFT+TABキーを強制送信
しようと思うのですが、”最終列”という判定をどうすればよいか
分かりません。
行は下から上へ、列は左から右へ移動する方法です。
よろしくお願いします。


すり  2005-06-24 23:27:55  No: 123030

すいません、自己レスです。
勘違いでした。
> 最終列=SHIFT+TABキーを強制送信
をしてもだめですよね。
もう一度出直します。


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加