コンボボックス型セルで空文字を選択した場合と値がある項目を選択した場合でGetPreferredRowHeightが返す値が異なる
対象製品
SPREAD for Windows Forms 7.0J
状況
修正済み
詳細
コンボボックス型セルで空文字を選択した場合と値がある項目を選択した場合でGetPreferredRowHeightが返す値が異なります。
【手順】
1.新規フォームにSPREADを配置します
2.下記サンプルコードをコピーし、アプリケーションを実行します
3.A1セルのコンボボックス型セルで空文字の項目を選択し、B1セルをクリックしてセルの編集を終了します
4.A1セルのコンボボックス型セルで「test」の項目を選択し、B1セルをクリックしてセルの編集を終了します
--手順3と4で1行目の高さが異なります
【サンプルコード】
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' コンボボックス型セルの設定
Dim cmb As New FarPoint.Win.Spread.CellType.ComboBoxCellType()
cmb.Items = New String() {"", "test", "定義"}
FpSpread1.ActiveSheet.Columns(0).CellType = cmb
End Sub
Private Sub FpSpread1_EditModeOff(sender As Object, e As EventArgs) Handles FpSpread1.EditModeOff
FpSpread1.ActiveSheet.Rows(FpSpread1.ActiveSheet.ActiveRowIndex).Height = FpSpread1.ActiveSheet.GetPreferredRowHeight(FpSpread1.ActiveSheet.ActiveRowIndex)
End Sub
【手順】
1.新規フォームにSPREADを配置します
2.下記サンプルコードをコピーし、アプリケーションを実行します
3.A1セルのコンボボックス型セルで空文字の項目を選択し、B1セルをクリックしてセルの編集を終了します
4.A1セルのコンボボックス型セルで「test」の項目を選択し、B1セルをクリックしてセルの編集を終了します
--手順3と4で1行目の高さが異なります
【サンプルコード】
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' コンボボックス型セルの設定
Dim cmb As New FarPoint.Win.Spread.CellType.ComboBoxCellType()
cmb.Items = New String() {"", "test", "定義"}
FpSpread1.ActiveSheet.Columns(0).CellType = cmb
End Sub
Private Sub FpSpread1_EditModeOff(sender As Object, e As EventArgs) Handles FpSpread1.EditModeOff
FpSpread1.ActiveSheet.Rows(FpSpread1.ActiveSheet.ActiveRowIndex).Height = FpSpread1.ActiveSheet.GetPreferredRowHeight(FpSpread1.ActiveSheet.ActiveRowIndex)
End Sub
回避方法
Service Pack 6(v7.0.2019.2008)で修正済み。