Responsive tile/card grid with automatic layout, perfect for image galleries, product catalogs, and dashboards.
TileList1.TileWidth := 200;
TileList1.TileHeight := 200;
TileList1.ColumnsCount := 0; // Auto
TileList1.Spacing := 10;
with TileList1.Items.Add do
begin
Title := 'Sunset';
ImageBitmap.LoadFromFile('photo1.jpg');
FooterText := 'July 2024';
end;
with TileList1.Items.Add do
begin
Title := 'Mountain';
ImageBitmap.LoadFromFile('photo2.jpg');
FooterText := 'August 2024';
end;
TileList1.SelectionMode := smSingle;
TileList1.ShowFooters := True;
with TileList1.Items.Add do
begin
Title := 'Laptop Pro';
Description := 'High-performance laptop';
ImageBitmap.LoadFromFile('laptop.png');
FooterText := '$1,299';
BadgeText := 'NEW';
end;
with TileList1.Items.Add do
begin
Title := 'Wireless Mouse';
Description := 'Ergonomic design';
ImageBitmap.LoadFromFile('mouse.png');
FooterText := '$49';
end;
TileList1.TileWidth := 150; TileList1.TileHeight := 150; TileList1.ColumnsCount := 3; with TileList1.Items.Add do begin Title := 'Sales'; Description := '$45,320'; BadgeText := '+12%'; end; with TileList1.Items.Add do begin Title := 'Orders'; Description := '234'; BadgeText := '+5%'; end;
Clear - Remove all tilesAddItem(Title, Description) - Quick add tileGetSelectedItems - Get array of selected tilesSelectAll / DeselectAll - Bulk selectionRecalculateLayout - Update tile positionsOnItemClick - Tile clicked (provides Index, Item)OnItemDblClick - Tile double-clickedOnSelectionChange - Selection changedOnItemRender - Before tile rendered (customize)