作成日: 2019/01/10 最終更新日: 2019/04/17
文書種別
不具合
状況
修正済み
詳細
■事象】
SPREADにデータ連結されたデータソースの内容を動的に変更した時、列フッタ上の集計セルが更新されません。
■再現サンプルコード(VB.NET)
■再現手順
1) フォーム上にSPREADコントロール(FpSpread1)と標準のButtonコントロール(Button1)を配置します。
2) 上記サンプルコードを実装し、実行します。
3) フォーム上のButton1をクリックします。
→SPREAD上に追加した3行が表示されますが、列フッタ上の集計セルが更新されません。
SPREADにデータ連結されたデータソースの内容を動的に変更した時、列フッタ上の集計セルが更新されません。
■再現サンプルコード(VB.NET)
Private dt As DataTable
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' 列フッタ上のセルに集計関数を設定します。
FpSpread1.ActiveSheet.ColumnFooter.Visible = True
FpSpread1.ActiveSheet.ColumnFooter.SetAggregationType(0, 0, FarPoint.Win.Spread.Model.AggregationType.Sum)
FpSpread1.ActiveSheet.ColumnFooter.SetAggregationType(0, 1, FarPoint.Win.Spread.Model.AggregationType.Sum)
' DataTableを生成し、SPREADに連結します。
dt = New DataTable
dt.Columns.Add("Field1", Type.GetType("System.Int32"))
dt.Columns.Add("Field2", Type.GetType("System.Int32"))
FpSpread1.DataSource = dt
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
' DataTableにレコードを追加します。
dt.Rows.Clear()
dt.Rows.Add(New Object() {1, 10})
dt.Rows.Add(New Object() {2, 20})
dt.Rows.Add(New Object() {3, 30})
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' 列フッタ上のセルに集計関数を設定します。
FpSpread1.ActiveSheet.ColumnFooter.Visible = True
FpSpread1.ActiveSheet.ColumnFooter.SetAggregationType(0, 0, FarPoint.Win.Spread.Model.AggregationType.Sum)
FpSpread1.ActiveSheet.ColumnFooter.SetAggregationType(0, 1, FarPoint.Win.Spread.Model.AggregationType.Sum)
' DataTableを生成し、SPREADに連結します。
dt = New DataTable
dt.Columns.Add("Field1", Type.GetType("System.Int32"))
dt.Columns.Add("Field2", Type.GetType("System.Int32"))
FpSpread1.DataSource = dt
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
' DataTableにレコードを追加します。
dt.Rows.Clear()
dt.Rows.Add(New Object() {1, 10})
dt.Rows.Add(New Object() {2, 20})
dt.Rows.Add(New Object() {3, 30})
End Sub
■再現手順
1) フォーム上にSPREADコントロール(FpSpread1)と標準のButtonコントロール(Button1)を配置します。
2) 上記サンプルコードを実装し、実行します。
3) フォーム上のButton1をクリックします。
→SPREAD上に追加した3行が表示されますが、列フッタ上の集計セルが更新されません。
回避方法
Service Pack 3(v11.0.4504.2012)で修正済み。
Service Pack を適用せずに対処する方法としては、SPREADに連結されたデータソースを編集した後、SheetViewクラスのRecalculateAllメソッドを実行することで、データソースの変更が列フッタ上の集計にも反映されます。
Service Pack を適用せずに対処する方法としては、SPREADに連結されたデータソースを編集した後、SheetViewクラスのRecalculateAllメソッドを実行することで、データソースの変更が列フッタ上の集計にも反映されます。
旧文書番号
83520