Lists & Collections
List, chip, group and popup controls. Each derives the closest native WPF
collection primitive (ListBox, ItemsControl) and renders its rows as
themed BeepListItems through the SimpleItem convention.
TheTechIdea.Beep.WPF.Controls ·
XAML namespace:
xmlns:beep="clr-namespace:TheTechIdea.Beep.WPF.Controls;assembly=TheTechIdea.Beep.WPF.Controls"
IEnumerable of SimpleItem (the shared BeepDM
list-item model) and exposes them through a bindable ListItems property that forwards to
the inherited ItemsSource — so ListItems="{Binding ...}" works without
consumers touching ItemsSource. Rows render through BeepListItem, whose
draw-mode is the inherited attached BeepListItem.Variant. See
SimpleItem & List Controls.
On this page
BeepListBox
The reference SimpleItem list control — a themed list with optional title, search, image and empty-state rows.
System.Windows.Controls.ListBox.
SelectedItem is hidden with a new SimpleItem; an
ItemClicked(object, SimpleItem) event fires on activation.| Property | Type | Description |
|---|---|---|
| ListItems | IEnumerable | Bindable source of SimpleItems; forwards to the inherited ItemsSource. |
| MenuItemHeight | double | Row height for each item (default NaN = auto). |
| ShowTitle | bool | Whether the title row is shown. |
| ShowSearch | bool | Whether the built-in search row is shown. |
| ShowImage | bool | Whether each item's image column is rendered. |
| ShowEmptyState | bool | Whether the empty-state row is rendered when the list has no items. |
| EmptyStateText | string | Text shown by the empty-state row (default "No items"). |
| IsBusy | bool | When true, the list shows a busy / loading indicator. |
<beep:BeepListBox ListItems="{Binding Countries}"
SelectedItem="{Binding Chosen}"
ShowSearch="True"
beep:BeepListItem.Variant="WithIcons"/>
BeepListItem
The per-row renderer used by every flat-list control; how it draws is chosen by its variant.
ContentControl. Variant is an
inherited attached property (ItemVariant: Standard, WithIcons, CheckBox,
Radio, Avatar, Card, Compact, Chip) — set it once on the host list and every row inherits it.| Property | Type | Description |
|---|---|---|
| Item | SimpleItem | The SimpleItem this row renders; assigned into Content and drawn through the active skin's variant template. |
| Variant (attached, inherited) | ItemVariant | Draw-mode for the row (default WithIcons). Resolves the active skin's {Skin}BeepListItemVariant.{Variant} template. |
<!-- Variant is normally set on the list, not the row -->
<beep:BeepListBox beep:BeepListItem.Variant="Card"
ListItems="{Binding People}"/>
BeepListGroup
A grouped list that renders its SimpleItems under section headers.
ItemsControl, implements
IBeepThemeable.| Property | Type | Description |
|---|---|---|
| ListItems | IEnumerable | Bindable source of SimpleItems; forwards to the inherited ItemsSource. |
<beep:BeepListGroup ListItems="{Binding MenuSections}"/>
BeepListofValuesBox
A list-of-values selector for choosing from a bound set of SimpleItems.
System.Windows.Controls.ListBox.
SelectedItem is hidden with a new SimpleItem.| Property | Type | Description |
|---|---|---|
| ListItems | IEnumerable | Bindable source of SimpleItems; forwards to the inherited ItemsSource. |
<beep:BeepListofValuesBox ListItems="{Binding Lookup}"
SelectedItem="{Binding Selected}"/>
BeepScrollList
A scrollable list of SimpleItem rows.
ListBox, implements
IBeepThemeable. SelectedItem is hidden with a
new SimpleItem.| Property | Type | Description |
|---|---|---|
| ListItems | IEnumerable | Bindable source of SimpleItems; forwards to the inherited ItemsSource. |
<beep:BeepScrollList ListItems="{Binding Notifications}"/>
BeepChipGroup
A wrapping group of chips, one per SimpleItem.
ItemsControl.| Property | Type | Description |
|---|---|---|
| ListItems | IEnumerable | Bindable source of SimpleItems; forwards to the control's ItemsSource. |
<beep:BeepChipGroup ListItems="{Binding Tags}"
beep:BeepListItem.Variant="Chip"/>
BeepChipListBox
A chip-styled selectable collection of SimpleItems.
ItemsControl.| Property | Type | Description |
|---|---|---|
| ListItems | IEnumerable | Bindable source of SimpleItems; forwards to the control's ItemsSource. |
<beep:BeepChipListBox ListItems="{Binding Filters}"/>
BeepVerticalTable
A label/value table that stacks its SimpleItems vertically.
ItemsControl, implements
IBeepThemeable.| Property | Type | Description |
|---|---|---|
| ListItems | IEnumerable | Bindable source of SimpleItems; forwards to the control's ItemsSource. |
<beep:BeepVerticalTable ListItems="{Binding RecordFields}"/>
BeepLovPopup
The canonical list-of-values popup — its template hosts a BeepListBox, so rows render
as themed BeepListItems.
Control, implements
IBeepThemeable. (Control, not Popup, so it has a
templatable Background/Template.)| Property | Type | Description |
|---|---|---|
| ListItems | IEnumerable | The list of values to choose from — a sequence of SimpleItem. |
| SelectedItem | SimpleItem | The currently selected value; bound TwoWay by default. |
<beep:BeepLovPopup ListItems="{Binding Choices}"
SelectedItem="{Binding Picked}"/>