OLAP データ ソースが更新されると、コントールにより作成されたデータ構造 (T:Infragistics.Win.UltraWinPivotGrid.Data.PivotGridRow、T:Infragistics.Win.UltraWinPivotGrid.Data.PivotGridColumn、セル) が再作成されます。新しいデータ構造が以前の構造と同一であっても、作成済みの行、列、セルのオブジェクト参照 ID は失われます。
PivotGridColumn クラスと PivotGridRow クラスは、ヘッダーとセルの外観と動作を制御する設定可能なプロパティを公開しますが、これらのプロパティ値は、データ ソースが更新されると失われます。これは、すべての行オブジェクトと列オブジェクトが再インスタンス化されるためです。
この制限は、PropertyCachingEnabled プロパティを使用し、すでに作成された PivotGridRow インスタンスと PivotGridColumn インスタンスに適用されるプロパティ値を更新中も維持し、更新完了後に対応するオブジェクトへの再適用をコントールに指示することで取り除くことができます。
データ構造に比較的多くの行または列がある場合に、プロパティ キャッシングを有効にすると、パフォーマンスに悪影響が出る可能性があります。これは、行または列の識別にディクショナリのルックアップが必要になるためです。さらに前のオブジェクトのプロパティ値をシリアル化し、新しいインスタンスへの適用に逆シリアル化も必要であるからです。
以前にキャッシュされたすべてのインスタンスを逆参照し、その目的に使用されたメモリをすべて解放するには、ClearPropertyCache メソッドを使用します。
このプロパティの値が True から False に切り替わる場合、ClearPropertyCache メソッドが直接呼び出されたかのように、キャッシュされた既存の値が逆参照されることに注意してください。