ListBox Painters
42 theme-aware list box painters — covering Standard, Material, Glassmorphism, Chat, Timeline, Notification, and many more styles
Table of Contents
Overview
The BeepListBox supports 42 visual painter styles, making it one of the most versatile controls in the library. Each painter handles background, item rendering, selection indication, hover effects, and accessibility contrast modes.
Painters implement IListBoxPainter or extend BaseListBoxPainter. Selection resolves via ListBoxPainterFactory.
Architecture
IListBoxPainter
└── BaseListBoxPainter (abstract)
├── StandardListBoxPainter
├── FilledListBoxPainter
├── OutlinedListBoxPainter
├── CardListPainter
├── CustomListPainter
└── ... (42 total)
ListBoxPainterFactory.Get(ListBoxType)
→ IListBoxPainterPainter Categories (42 Total)
Standard Styles (10)
StandardListBoxPainter, SimpleListPainter, OutlinedListBoxPainter, FilledListBoxPainter, FilledStylePainter, MinimalListBoxPainter, CompactListPainter, RoundedListBoxPainter, BorderlessListBoxPainter, MaterialOutlinedListBoxPainter
Card & Content Styles (8)
CardListPainter, GradientCardListBoxPainter, GlassmorphismListBoxPainter, HeroUIListBoxPainter, NeumorphicListBoxPainter, RekaUIListBoxPainter, ChakraUIListBoxPainter, CommandListBoxPainter
Specialized Item Styles (10)
AvatarListBoxPainter, ChatListBoxPainter, NotificationListBoxPainter, TimelineListBoxPainter, ThreeLineListBoxPainter, ProfileCardListBoxPainter, ContactListBoxPainter, TeamMembersPainter, WithIconsListBoxPainter, ChipStyleListBoxPainter
Behavior Styles (6)
SearchableListPainter, GroupedListPainter, CheckboxListPainter, RadioSelectionPainter, MultiSelectionTealPainter, InfiniteScrollListBoxPainter
Selection & State Styles (5)
ColoredSelectionPainter, LanguageSelectorPainter, CategoryChipsPainter, FilterStatusPainter, ErrorStatesPainter
Checkbox Variants (3)
CheckboxListPainter, RaisedCheckboxesPainter, OutlinedCheckboxesPainter
Navigation
NavigationRailListBoxPainter
Examples
var listBox = new BeepListBox();
// Set visual style
listBox.ItemStyle = ListBoxType.CardList;
// → CardListPainter renders each item as a card
listBox.ItemStyle = ListBoxType.ChatList;
// → ChatListBoxPainter adds avatar + message preview
listBox.ItemStyle = ListBoxType.GroupedList;
// → GroupedListPainter renders section headers
// Add items
listBox.Items.Add(new BeepListItem
{
Text = "John Doe",
SubText = "Online",
ImagePath = "avatars/john.png"
});