← Back to Home • Next: TreeSelect Control →
MultiTable<T> paints its output in named regions. Each region is a TableMultiSelectStyles value you can
recolor per control instance.
ℹ️ Styling is per control — there is no global “style all multi-tables” API. The only style-related global setting is
PromptPlus.Config.ContrastRatio.
TableMultiSelectStyles regions| Region | What it paints |
|---|---|
Prompt |
The prompt text |
Answer |
The answer region (shows the selected-items count) |
Description |
The description line under the prompt |
HeaderText |
The column header row |
BorderLines |
The outer borders, column separators, and header separator |
SelectedCell |
The focused (cursor) row — the checkbox mark and all cell text |
UnselectedCell |
The non-focused rows — the checkbox mark and all cell text |
DisabledRow |
Rows that cannot be toggled — the checkbox mark and all cell text |
Pagination |
The page indicator |
Error |
The validation error line |
Tooltips |
The keyboard-hint line |
TaggedInfo |
The tagged-information region (e.g. the filter label) |
Use the fluent Styles method. A Style is a foreground color, a background
color, and an Overflow strategy — there is no bold/italic/underline. A bare Color is accepted
as shorthand for a foreground-only style.
using ConsolePlusLibrary;
using PromptPlusLibrary;
PromptPlus.Controls
.TableMultiSelect<Product>("Select products")
.AddColumn("Name", x => x.Name)
.AddColumn("Category", x => x.Category)
.AddColumn("Price", x => x.Price, v => $"${v:N2}", alignment: ColumnAlignment.Right)
.AddItems(products)
.Styles(TableMultiSelectStyles.BorderLines, new Style(Color.Silver, Color.Black))
.Styles(TableMultiSelectStyles.HeaderText, new Style(Color.Cyan, Color.Black))
.Styles(TableMultiSelectStyles.SelectedCell, new Style(Color.Black, Color.Cyan))
.Styles(TableMultiSelectStyles.UnselectedCell, new Style(Color.White, Color.Black))
.Styles(TableMultiSelectStyles.DisabledRow, new Style(Color.Silver, Color.Black))
.Run();
To reuse a theme across multi-tables, wrap the styling in a helper you call for each control — the library does not broadcast styles for you. See Global Styles for the pattern.
PromptPlus nudges foreground colors that fall below the configured contrast ratio so text stays
readable on any terminal theme. Tune or disable with PromptPlus.Config.ContrastRatio.
Style type, per-control styling, contrastStyle API and OverflowTableSelectStyles regions