作成日: 2019/09/04 最終更新日: 2019/12/20
文書種別
不具合
状況
修正済み
詳細
セルの表示を中央寄せにし右隣の列を非表示に設定した場合、セル幅以上の文字入力を行うと例外(NullReferenceException)が発生します。本現象はLegacyBehaviorsプロパティがStyleを含む場合に発生します。
【再現手順】
1.新規作成したプロジェクトのForm1にFpSpreadを貼り付けます。
2.FpSpreadのLegacyBehaviorsにStyleを設定します。
3.下記のサンプルコードを記述しプロジェクトをデバッグ実行します。
4.A1セルに半角文字を8文字以上入力します。
■サンプルコード(VB.NET)
【再現手順】
1.新規作成したプロジェクトのForm1にFpSpreadを貼り付けます。
2.FpSpreadのLegacyBehaviorsにStyleを設定します。
3.下記のサンプルコードを記述しプロジェクトをデバッグ実行します。
4.A1セルに半角文字を8文字以上入力します。
■サンプルコード(VB.NET)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
FpSpread1.ActiveSheet.Columns(0, 0).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center
FpSpread1.ActiveSheet.Columns(1).Visible = False
End Sub
FpSpread1.ActiveSheet.Columns(0, 0).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center
FpSpread1.ActiveSheet.Columns(1).Visible = False
End Sub
回避方法
Service Pack 3(v12.0.4504.2012 )で修正済み。
Service Pack を適用せずに対処する方法としては、列を非表示ではなく幅を0に設定するか、AllowEditOverflowプロパティをFalseに設定することで現象が回避可能です。
' 回避策1
FpSpread1.ActiveSheet.Columns(1).Width = 0
' 回避策2
'FpSpread1.AllowEditOverflow = False
Service Pack を適用せずに対処する方法としては、列を非表示ではなく幅を0に設定するか、AllowEditOverflowプロパティをFalseに設定することで現象が回避可能です。
' 回避策1
FpSpread1.ActiveSheet.Columns(1).Width = 0
' 回避策2
'FpSpread1.AllowEditOverflow = False
旧文書番号
84439