Overview
TeeGrid supports direct binding to generic TList<T> and TObjectList<T> collections, providing automatic UI updates as your list changes.
Basic TList Binding
TList<TPerson>
TObjectList Binding
TObjectList<TCar>
TObjectList<T> automatically manages the lifetime of its objects when freed.
Controlling Visibility
Member Visibility
Control which fields and properties are displayed:
Including Ancestor Members
Complete Example from Demos
From Unit_TList.pas in the VirtualData demos:
Key Concepts
TVirtualListData vs TVirtualObjectListData
- TVirtualListData: For
TList<T> of records or simple types
- TVirtualObjectListData: For
TList<T> or TObjectList<T> of objects
Member Filtering
Control what gets displayed:
Live Updates
Changes to the list automatically reflect in the grid:
Advanced Usage
Custom Visibility
Combining with Themes
- TeeGrid uses virtual rendering - only visible rows are drawn
- Lists of 10,000+ items perform smoothly
- RTTI reflection is done once during binding, not during rendering
Common Patterns
Record Lists
Object Lists with Ownership
Features Demonstrated
- Binding
TList<T> of records
- Binding
TObjectList<T> of objects
- Controlling member visibility
- Including/excluding ancestor members
- Automatic column generation from RTTI
- Live data updates
Next Steps