行モード(RowMode)で結合セルをクリックすると、適切に行が選択されない場合がある
対象製品
SPREAD for Windows Forms 8.0J
状況
修正済み
詳細
操作モード(OperationMode)が行モード(RowMode)では結合セルをクリックすると、結合の基点の行(1番上)が選択されない場合があります。
【手順】
1.新規フォームにSPREADを配置します
2.下記サンプルコードをコピーし、アプリケーションを実行します
3.C6セルをクリックします
--2行目が選択されます
4.D8セルをクリックします
5.C6セルをクリックします
--6行目が選択されます
【サンプルコード】
Private tt As New ToolTip()
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' シートの設定
FpSpread1.ActiveSheet.OperationMode = FarPoint.Win.Spread.OperationMode.RowMode
FpSpread1.ActiveSheet.SelectionStyle = FarPoint.Win.Spread.SelectionStyles.SelectionColors
FpSpread1.ActiveSheet.SelectionBackColor = Color.Red
' セルの連結
FpSpread1.ActiveSheet.Cells(1, 2).RowSpan = 5
FpSpread1.ActiveSheet.Cells(1, 3).RowSpan = 5
End Sub
Private Sub FpSpread1_CellClick(sender As Object, e As CellClickEventArgs) Handles FpSpread1.CellClick
' ツールチップの表示
tt.Show("テスト", FpSpread1)
End Sub
【手順】
1.新規フォームにSPREADを配置します
2.下記サンプルコードをコピーし、アプリケーションを実行します
3.C6セルをクリックします
--2行目が選択されます
4.D8セルをクリックします
5.C6セルをクリックします
--6行目が選択されます
【サンプルコード】
Private tt As New ToolTip()
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' シートの設定
FpSpread1.ActiveSheet.OperationMode = FarPoint.Win.Spread.OperationMode.RowMode
FpSpread1.ActiveSheet.SelectionStyle = FarPoint.Win.Spread.SelectionStyles.SelectionColors
FpSpread1.ActiveSheet.SelectionBackColor = Color.Red
' セルの連結
FpSpread1.ActiveSheet.Cells(1, 2).RowSpan = 5
FpSpread1.ActiveSheet.Cells(1, 3).RowSpan = 5
End Sub
Private Sub FpSpread1_CellClick(sender As Object, e As CellClickEventArgs) Handles FpSpread1.CellClick
' ツールチップの表示
tt.Show("テスト", FpSpread1)
End Sub
回避方法
Service Pack 3(v8.0.3505.2008)で修正済み。
Service Pack 3(v8.0.3505.2008)より前のバージョンでは次の回避方法が有効です。
------------------------------------------
CellClickイベントのe.CancelをTrueに設定して組み込みの機能を解除した上で、明示的にアクティブセルを設定します。
【サンプルコード】
Private Sub FpSpread1_CellClick(sender As Object, e As CellClickEventArgs) Handles FpSpread1.CellClick
' 回避策
e.Cancel = True
FpSpread1.ActiveSheet.SetActiveCell(e.Row, e.Column)
' ツールチップの表示
tt.Show("テスト", FpSpread1)
End Sub
Service Pack 3(v8.0.3505.2008)より前のバージョンでは次の回避方法が有効です。
------------------------------------------
CellClickイベントのe.CancelをTrueに設定して組み込みの機能を解除した上で、明示的にアクティブセルを設定します。
【サンプルコード】
Private Sub FpSpread1_CellClick(sender As Object, e As CellClickEventArgs) Handles FpSpread1.CellClick
' 回避策
e.Cancel = True
FpSpread1.ActiveSheet.SetActiveCell(e.Row, e.Column)
' ツールチップの表示
tt.Show("テスト", FpSpread1)
End Sub