Pivot recipe
Source: 03_Pivot/ · tabbed navigation built from Tesserae's Pivot() component.
Pivots organise content into related views within the same context — a single workspace page can switch between Overview / Activity / Settings without changing routes.
What it teaches
- Default,
.Justified(), and.Centered()styles. cached: truevscached: false— the cached tab keeps its rendered tree (and its state) when you switch away; the uncached one rebuilds on every visit. The recipe surfaces a timestamp to make the difference visible..MaxHeight(...)to bound a tab's height and let it scroll.- A long list of titles to trigger the overflow chevron / "all tabs" menu.
Code sketch
Pivot()
.Justified()
.Item("Overview", cached: true, () => BuildOverview())
.Item("Activity", cached: false, () => BuildActivity()) // rebuilds on every visit
.Item("Settings", cached: true, () => BuildSettings())
.MaxHeight("400px")
See also
- INodeRenderer recipe — every node detail page uses a Pivot to organise its tabs.
- Mosaik's PivotSample — the canonical reference in Tesserae's own test app.