作成日: 2021/10/21 最終更新日: 2021/12/22
文書種別
不具合
状況
修正済み
詳細
CellTemplateにDataTemplateを設定したC1FlexGridでメモリリークが発生します。
C1FlexGridの画面を閉じたあとに、GC.Collectを実行しても、Visual Studioの診断ツールで「スナップショットの作成」を実行し、「ヒープを表示」を実行すると、バインドしたオブジェクトが残ったままの状態になっていることが確認できます。
回避方法
この問題は 2021J v3 (5.0.20213.159) で修正されました。
※修正版を適用しない場合の回避方法は以下の通りです。
以下のようにデフォルトのCellFactoryの代わりに独自のCellFactoryを設定することで回避が可能です。
※修正版を適用しない場合の回避方法は以下の通りです。
以下のようにデフォルトのCellFactoryの代わりに独自のCellFactoryを設定することで回避が可能です。
◎サンプルコード(C#)
public class CustomCellFactory : CellFactory
{
}
public MainWindow()
{
InitializeComponent();
grid.CellFactory = new CustomCellFactory();
}