Core Docs

VirtualGrid

Grid render virtualized — chỉ render row đang nằm trong viewport. Dùng cho dataset > 1000 row.

Source: Core/Components/VirtualGrid.cs ComponentType trong DB: VirtualGrid. Trên màn hình nhỏ (< 768px) Core tự fallback sang GridView (hoặc GroupGridView nếu GroupBy set).

Cấu hình

ComType:        VirtualGrid
Reference:      Transaction
SqlSelect:      "SELECT * FROM v_Transaction"
SqlSearch:      ...
VirtualScroll:  true
Row:            32      # chiều cao 1 row (px)

Field DB dùng

FieldVai trò
ReferenceType entity nguồn.
RefNameTên entity dạng string.
FieldNameProperty bind navigation collection (nếu có).
SqlSelectSQL custom thay cho OData (mạnh hơn cho data lớn).
SqlSearchSQL custom cho search box.
JoinTableBảng join SQL.
RowBắt buộc — chiều cao px mỗi row (virtual scroll cần biết để tính offset).
VirtualScrollPhải true để bật virtual mode.
FilterLocalTrue → filter ở client.
CanAddTrue → hiển thị nút thêm row.
DescValueDescription value (cho display readonly).

Events

Kế thừa từ ListView / GridView. Một số behavior bị disable trong virtual mode (full-grid keyboard nav).

Khi nào dùng

✅ List rất lớn (>1000 row) — render full grid choke browser. ❌ List nhỏ → dùng GridView thường, đơn giản hơn.

Tip

  • Row (chiều cao px) phải set chính xác — virtual scroll dùng để tính offset.
  • SqlSelect / SqlSearch cho data source SQL custom (thay vì OData).
  • Test kỹ keyboard nav, sticky header, sort — virtual mode dễ glitch hơn grid thường.

Core Docs · Astro · Core.API/wwwRoot/docs