Core Docs

GroupGridView

GridView có group rows theo 1 field. Header group có thể collapse/expand.

Source: Core/Components/GroupGridView.cs ComponentType trong DB: GridView với GroupBy set — Core tự pick GroupGridView thay vì GridView thường. Cũng dùng được GroupGridView qua reflection.

Cấu hình

ComType:        GroupGridView
Reference:      Order
DataSourceFilter: ?$filter=Active eq true
GroupBy:        StatusName       # field group theo
GroupFormat:    "{StatusName} ({COUNT})"
CanAdd:         true
VirtualScroll:  true

Field DB dùng

Kế thừa toàn bộ field của GridView. Field riêng / quan trọng:

FieldVai trò
GroupByField property group rows theo (vd StatusName, hoặc nested Customer/Country).
GroupFormatString template header group ("{StatusName} ({COUNT})").
GroupEventJSON map event cho group row (KHÔNG phải Events). Vd {"click": "OnGroupClicked"}.
FieldNameProperty bind nếu grid này nằm trong navigation collection.
CanAddTrue → hiển thị nút thêm row mới.
VirtualScrollTrue → render virtualized cho data lớn.
IsRealtimeTrue → push update qua WebSocket.
UpperCaseTrue → text trong group header uppercase.

Events kích hoạt

Group event — qua field riêng GroupEvent (KHÔNG phải Events):

// Component.GroupEvent
{ "click": "OnGroupClicked", "dblclick": "OnGroupDblClicked" }
EventMethod signature
click(row)
dblclick(row)

row là 1 row group (chứa info group: Key, Items, …).

public void OnGroupClicked(object row)
{
    Toast.Small("Click vào group: " + row);
}

Row event — qua Events field, giống GridView.

Tip

  • GroupBy chấp nhận property name của row entity. Có thể nest qua FK: Customer/Country/Code.
  • GroupFormat dùng {FieldName} cho field group + {COUNT} cho số lượng item.

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