作成日: 2022/07/12 最終更新日: 2022/09/07
文書種別
不具合
状況
修正済み
詳細
DefaultSheetDataModelを継承してシートのデータモデル(SheetView.Models.Dataプロパティ)に設定すると、フィルタリング機能や行数の操作において不正な動作になる場合があり、現在のところ、次のような不具合が発生することを確認しています。
(1) メモを設定しているシートの行数を0にすると例外(System.ArgumentOutOfRangeException)が発生する
(2) フィルタを実行している状態から行を追加するとフィルタによる非表示行が表示される
(3) 日付のフィルタリングが正しく動作しない場合がある
回避方法
Service Pack 1(v15.0.4801.2012/v15.1.0)で修正済み。
Service Pack 1を適用せずに対処する方法としては、
Service Pack 1を適用せずに対処する方法としては、
(1)の現象は、DefaultSheetDataModelクラスのClearメソッドを使用することで回避可能です。
(2)の現象は、ワークシートのInsertRowメソッドを設定してから、行数を再設定することで回避可能です。
(3)の現象の回避方法はありません。
private void button1_Click(object sender, EventArgs e)
{
// (1)の現象の回避策
(fpSpread1.ActiveSheet.Models.Data as DefaultSheetDataModel).Clear(-1, -1, -1, -1);
fpSpread1.ActiveSheet.RowCount = 0; // (1)の現象
}
private void button2_Click(object sender, EventArgs e)
{
fpSpread1.ActiveSheet.Rows.Add(0, 1); // (2)の現象
// (2)の現象の回避策
fpSpread1.ActiveSheet.AsWorksheet().InsertRows(0, 1);
fpSpread1.ActiveSheet.AsWorksheet().RowCount = fpSpread1.ActiveSheet.RowCount;
}