VirtualGrid
VirtualGrid virtualizes a vertically scrolling grid.
Resolve columns from available width
Section titled “Resolve columns from available width”VirtualGrid(items, [](const Item& item) { return ItemCard(item).Key(item.id);}) .Columns(GridColumns::Adaptive(220.0F)) .EstimatedRowExtent(180.0F) .ColumnSpacing(16.0F) .RowSpacing(16.0F) .CacheExtent(320.0F)Choose GridColumns::Fixed(count) for a stable column count or GridColumns::Adaptive(minimum_width) to resolve as many columns as available width can support.
Tune rows and spans
Section titled “Tune rows and spans”.RowExtent(...) describes fixed-height rows.
Use .EstimatedRowExtent(...) when rows can vary.
.ItemSpans(...) supplies the number of columns consumed by each corresponding item.
The same range, state range, and count-factory constructors as VirtualList are available.
.Controller(...) supports metrics and indexed scrolling.
Preserve grid semantics
Section titled “Preserve grid semantics”VirtualGrid publishes grid, row and column counts, and realized cell coordinates through accessibility semantics.
- Constructors inherited from
VirtualLayout. - Fluent methods:
.Columns,.RowExtent,.EstimatedRowExtent,.RowSpacing,.ColumnSpacing,.CacheExtent,.ItemSpans,.Controller. - Column model:
GridColumns::FixedorGridColumns::Adaptive.
Use Flow for a small wrapping collection that should mount every child.

