Namespace SharpConsoleUI.Builders
Classes
- BarGraphBuilder
Fluent builder for creating BarGraphControl instances.
- ButtonBuilder
Fluent builder for button controls
- CanvasControlBuilder
Fluent builder for creating CanvasControl instances.
- ChatTranscriptBuilder
Fluent builder for ChatTranscriptControl.
- CheckboxBuilder
Fluent builder for checkbox controls
- CollapsiblePanelBuilder
Fluent builder for creating CollapsiblePanel instances.
- ColumnBuilder
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- Controls
Static factory class for creating control builders
- DatePickerBuilder
Fluent builder for creating and configuring DatePicker controls.
- DialogTemplate
A window template for creating modal dialog windows with standard dialog behavior. Dialogs are centered, modal, and non-resizable by default.
- DropdownBuilder
Fluent builder for dropdown controls
- FigleControlBuilder
Fluent builder for Figlet ASCII art controls
- FlowControlBuilder
Fluent builder for FlowControl.
- FlowControlBuilderBase<TSelf>
Shared fluent builder base for FlowControl and its subclasses (e.g. WizardControl). It is self-typed (
TSelf) so every fluent method returns the concrete builder type, keeping the chain intact through inheritance; subclasses only choose which control Apply<T>(T) is given. The control's own layout defaults (Fill / Stretch) are preserved unless explicitly overridden, since a FlowControl must fill the slot it is placed in (overriding them with the usual Top/Left would collapse the inline region to a single row).
- FormBuilder
Fluent builder for FormControl instances. Holds a live FormControl and delegates all Add* / section / row / button methods to it, returning
thisfor chaining. Build() returns the underlying form; the implicit operator allows passing a builder wherever a FormControl is expected.
- GridBuilder
Fluent builder for GridControl. Column and row definitions, gaps, padding, size, alignment, colour role, and child placements are accumulated and applied in Build() in dependency order: track definitions are set first so that placement range-validation in Place(IWindowControl, int, int, int, int) sees the defined tracks, then the deferred Place(IWindowControl, int, int, int, int)/Add(IWindowControl) intents are replayed in the order they were declared.
- HorizontalGridBuilder
Fluent builder for constructing HorizontalGridControl instances with a concise, chainable API. Mirrors HorizontalGridBuilder but produces a grid-backed horizontal strip.
- HorizontalSplitterBuilder
Fluent builder for creating HorizontalSplitterControl instances.
- HtmlBuilder
Fluent builder for HtmlControl
- ImageControlBuilder
Fluent builder for creating ImageControl instances.
- LineGraphBuilder
Fluent builder for creating LineGraphControl instances.
- ListBuilder
Fluent builder for list controls
- MarkupBuilder
Fluent builder for markup controls
- MenuBuilder
Fluent builder for creating MenuControl instances with a clean, chainable API.
- MenuItemBuilder
Fluent builder for creating MenuItem instances with a hierarchical structure.
- MultilineEditControlBuilder
Fluent builder for multiline edit controls
- NavigationHeaderBuilder
Fluent builder for configuring items under a navigation header.
- NavigationViewBuilder
Fluent builder for NavigationView controls.
- PanelBuilder
Fluent builder for creating PanelControl instances.
- ProgressBarBuilder
Fluent builder for creating ProgressBarControl instances.
- PromptBuilder
Fluent builder for prompt controls
- RadioBuilder<T>
Fluent builder for RadioControl<T>.
- RadioGroupBuilder<T>
Fluent builder for RadioGroup<T> — the non-visual coordination object that owns the single-selection invariant for a set of RadioControl<T> instances.
- RangeSliderBuilder
Fluent builder for creating RangeSliderControl instances.
- RuleBuilder
Fluent builder for rule controls (horizontal separator lines)
- ScrollablePanelBuilder
Fluent builder for scrollable panel controls
- SliderBuilder
Fluent builder for creating SliderControl instances.
- SparklineBuilder
Fluent builder for creating SparklineControl instances.
- SpectreRenderableBuilder
Fluent builder for Spectre.Console renderable controls
- SpinnerBuilder
Fluent builder for SpinnerControl.
- SplitterControlBuilder
Fluent builder for creating SplitterControl instances.
- StatusBarBuilder
Fluent builder for StatusBarControl. Methods follow standard builder naming (AddLeft, WithBackgroundColor, etc.).
- TabControlBuilder
Fluent builder for tab controls
- TableControlBuilder
Fluent builder for creating TableControl instances with comprehensive configuration.
- TerminalBuilder
Fluent builder for creating a TerminalControl. Supported platforms: Linux (openpty), Windows 10 1809+ (ConPTY).
- TimePickerBuilder
Fluent builder for creating and configuring TimePicker controls.
- ToolWindowTemplate
A window template for creating tool windows with standard tool panel behavior. Tool windows are typically smaller, positioned to the side, and can be resized and moved.
- ToolbarBuilder
Fluent builder for toolbar controls
- TreeControlBuilder
Fluent builder for tree controls
- VideoControlBuilder
Fluent builder for VideoControl.
- WindowBounds
Immutable window bounds information
- WindowBuilder
Provides a fluent builder pattern for creating and configuring windows in the console window system. Use method chaining to configure window properties before calling Build() or BuildAndShow(bool).
- WindowTemplate
Abstract base class for window templates that encapsulate reusable window configurations. Inherit from this class to create custom templates for common window types.
- WizardControlBuilder
Fluent builder for WizardControl. Shares FlowControlBuilderBase<TSelf>'s fluent surface (placeholder, name, margin, sizing, alignment, sticky position) — the same way WizardControl shares FlowControl — and produces a WizardControl from Build(). Because the base is self-typed, the fluent chain keeps returning WizardControlBuilder, so
Controls.Wizard().WithName(...).Build()yields a WizardControl. If no placeholder is set, the WizardControl's default placeholder is kept.
Delegates
- WindowEventHandler<T>
Delegate for event handlers that receive both the event arguments and the parent window.