53 lines
2.4 KiB
Markdown
53 lines
2.4 KiB
Markdown
# Grids
|
|
|
|
Domain-specific grid components, one per entity type. All inherit `FruitBankGridBase<TEntity>`.
|
|
|
|
> For the MgGrid framework reference see: `AyCode.Blazor/AyCode.Blazor.Components/docs/MGGRID/README.md`
|
|
|
|
## FruitBankGridBase
|
|
|
|
`FruitBankGridBase<TDataItem>` is the project-specific adapter that fixes the generic parameters:
|
|
|
|
```
|
|
MgGridBase<SignalRDataSourceObservable<TDataItem>, TDataItem, int, LoggerClient>
|
|
```
|
|
|
|
Adds these defaults in `OnParametersSet` (based on `IsMasterGrid`):
|
|
|
|
| Setting | Master | Detail |
|
|
|---|---|---|
|
|
| `SizeMode` | `Small` | `Small` |
|
|
| `ShowGroupPanel` | `true` | `false` |
|
|
| `ShowSearchBox` | `true` | `false` |
|
|
| `ShowFilterRow` | `true` | `false` |
|
|
| `FilterMenuButtonDisplayMode` | `Never` | `Always` |
|
|
| `DetailRowDisplayMode` | `Auto` | `Never` |
|
|
| `DetailExpandButtonDisplayMode` | `Auto` | `Never` |
|
|
| `PagerVisible` | `true` | `true` |
|
|
| `PageSize` | 20 (Small) / 15 | 10 |
|
|
| `AllowColumnReorder` | `true` | `true` |
|
|
| `AllowGroup` | `true` | `false` |
|
|
| `EditMode` | `EditRow` | `EditRow` |
|
|
| `FocusedRowEnabled` | `true` | `true` |
|
|
| `ColumnResizeMode` | `NextColumn` | `NextColumn` |
|
|
| `PageSizeSelectorVisible` | `true` | `true` |
|
|
|
|
Also adds `OnCustomizeElement`: alternating row colors (`.alt-item`), header background (`#E6E6E6`), `hideDetailButton` for non-admin users.
|
|
|
|
## Legacy MgGridBase
|
|
|
|
`Components/MgGridBase.cs` — a non-generic legacy class that directly extends `DxGrid` and implements `IMgGridBase`. Used by older pages that predate the generic `MgGridBase<…>`. New grids should use `FruitBankGridBase<TEntity>` instead.
|
|
|
|
## Subfolders
|
|
|
|
| Folder | Entity | Notes |
|
|
|---|---|---|
|
|
| `GenericAttributes/` | `GridGenericAttributeBase` | Context-based (ContextIds: EntityId, KeyGroup, StoreId). Parent type switching: Product, Order, OrderItem |
|
|
| `OrderItems/` | `GridOrderItem` | Commented out — placeholder |
|
|
| `Partners/` | `GridPartnerBase` | Simple master grid with CRUD tags |
|
|
| `Products/` | `GridStockQuantityHistoryDtoBase` | Detail grid under ProductDto |
|
|
| `ShippingDocuments/` | `GridShippingDocumentBase` | Parent type switching: Shipping, Product, Partner. Sets ContextIds/KeyFieldNameToParentId per parent type |
|
|
| `ShippingItems/` | `GridShippingItemBase` | Parent type switching: ShippingDocument, Shipping, Partner |
|
|
| `Shippings/` | `GridShippingBase` | Simple master grid with CRUD tags |
|
|
| `StockTakingItems/` | `GridStockTakingItemBase` | Simple master grid, GetAll only |
|