単一選択モード(SingleSelect)で上下矢印キーにより非表示行を超えて移動すると、LeaveCellイベントのe.NewRowとe.NewColumnの値が不正になる

文書番号 : 38923     文書種別 : 不具合     登録日 : 2015/06/30     最終更新日 : 2015/07/23
文書を印刷する
対象製品
SPREAD for Windows Forms 7.0J
状況
修正済み
詳細
単一選択モード(SingleSelect)で上下矢印キーにより非表示行を超えて移動すると、LeaveCellイベントのe.NewRowとe.NewColumnの値が不正になります。

【手順】
1.新規フォームにSPREADを配置します
2.下記サンプルコードをコピーし、アプリケーションを実行します
3.A1セルをクリックします
4.下矢印キーを押下します
  --A3セルに移動しますが、LeaveCellイベントのe.NewRowが1、e.NewColumnが-1を返します
   ※本来は、e.NewRowが2、e.NewColumnが0を返します

【サンプルコード】
  Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    FpSpread1.ActiveSheet.OperationMode = FarPoint.Win.Spread.OperationMode.SingleSelect
    FpSpread1.ActiveSheet.Rows(1).Visible = False
  End Sub

  Private Sub FpSpread1_LeaveCell(sender As Object, e As FarPoint.Win.Spread.LeaveCellEventArgs) Handles FpSpread1.LeaveCell
    Console.WriteLine("row={0} col={1} newRow={2} newCol={3}", e.Row, e.Column, e.NewRow, e.NewColumn)
  End Sub
回避方法
Service Pack 5(v7.0.2018.2008)で修正済み。