<igDP:XamDataGrid> <igDP:XamDataGrid.FieldSettings> <igDP:FieldSettings AllowCellVirtualization="False"/> </igDP:XamDataGrid.FieldSettings> </igDP:XamDataGrid>
各 DataRecord は、 FieldLayout 内の Field ごとに Cell を遅延作成する Cells コレクションを公開します。「遅延作成」は、 Cell オブジェクトがコードまたは XAML でリクエストされるまで作成されないことを意味します。
CellValuePresenter 要素は現在表示されているセルを表すためだけに作成されるように仮想化されます (詳細は、 パフォーマンス最適化の概要を参照してください)。ただし、以下の 2 つの事例では、表示してはならないセルに対して CellValuePresenters が作成されます。
すべてのフィールドのセルの仮想化をオフにする以下の例のように、CellValuePresenters は対応する Field の FieldSettings の AllowCellVirtualization プロパティが False に設定されるセルに対して常に作成されます。
<igDP:XamDataGrid> <igDP:XamDataGrid.FieldSettings> <igDP:FieldSettings AllowCellVirtualization="False"/> </igDP:XamDataGrid.FieldSettings> </igDP:XamDataGrid>
FieldLayoutSettings の DataRecordSizingMode プロパティが SizedToContentAndFixed のデフォルト値のまま、または SizedToContentAndIndividuallySizable に設定される時 (以下の例の XAML のように)。この事例では、セル エディターの IsExtentBasedOnValue メソッドが呼び出されて、方向に基づいてセルを仮想化できるかどうかを決定します。セル エディターの詳細については、 セル値の編集を参照してください。
<igDP:XamDataGrid> <igDP:XamDataGrid.FieldLayoutSettings> <igDP:FieldLayoutSettings DataRecordSizingMode="SizedToContentAndIndividuallySizable"/> </igDP:XamDataGrid.FieldLayoutSettings> </igDP:XamDataGrid>