Board & Styling

Desktop UI with the finish of the web, written in C# and drawn by the same engine as the grid: a layout grid like CSS grid, typed style sheets with a cascade, drawn controls — and any grid, chart or 3D view as a tile.

Preview Part of ArionUI Core, open source under Apache-2.0. Today it carries dashboards, cockpits, feeds and simple forms; the controls a complete business application needs are planned.

The ArionUI showcase window, dark theme, Dashboard scene: a header band with two buttons, four figure cards with micro charts, a line chart, a 3D surface, an order table and an event list on one board. The ArionUI showcase window, light theme, Dashboard scene: a header band with two buttons, four figure cards with micro charts, a line chart, a 3D surface, an order table and an event list on one board.
The showcase “Dashboard” scene: one board — figures that wrap with the width, a chart, a 3D surface, a full data grid with filter row, an event list and a form further down. Avalonia host, screenshot of the running app (0.1.0-preview.1). Chart and 3D surface are Pro modules.

Board

A grid of tracks that places controls in cells. Columns and rows are fixed, content-sized or shares of the rest; columns can repeat as many times as fit and wrap tiles onto more rows (Track.AutoFit, CSS auto-fit). Tiles span rows and columns, gaps and padding keep the rhythm, and breakpoints — Board.When(minWidth, …) — change tracks, placement and style rules with the board's own width, like container queries.

Board in the documentation →

Styling

Style sheets in C#, laid out like CSS. Rules select tiles and controls by type, class and state (Select.Type<Button>().Class("primary").Hover); the cascade weighs the origin first — theme, the control's own hints, the application's sheets, the tile's inline style — then specificity, then order. Colours and lengths come from theme tokens, so a page follows every theme switch, including high contrast. A change of state blends over a transition; reduce motion turns it off.

And the cascade explains itself: Board.Explain(control) lists every declaration that was weighed for a tile, the winner first — the Styles pane of a browser's developer tools, as an API.

Styling in the documentation →

Showcase scenes “Styling lab”, “Feed” and “Appearance”, Avalonia host, 0.1.0-preview.1, each in the light and the dark theme.

Controls available today

Button, text box (one line, with clipboard and undo), check box, toggle switch, slider, drop-down button, label with wrapping, separator, spacer, menu row, a free drawing surface; stack panel, scroll panel and card as containers. Each is focusable where it should be, walks with Tab, has a screen-reader role and value, and takes its look from the style sheets. Menus open as panes. That is about a dozen controls — enough for a form with a few fields, not yet for every form.

Controls in the documentation →

Any view as a tile

ViewTile puts any ArionUI view on a board: a data grid that sorts, filters, edits and searches, a card wall, a tree, a pivot, a chart, a 3D scene. Each runs in a grid session of its own; its menus and panes open above the whole board. That is what sets a board apart from a page of controls: the dashboard's order table is the full grid, not a picture of one.

Outside a grid, on all three hosts

ArionControlSurface puts a tree of controls anywhere in a window — docked in a WinForms form, in a WPF panel, as an Avalonia window's content. On WinForms it draws on the CPU without a GL context of its own, so a form can carry many of them. The WinForms showcase is built from six of them plus grid controls; WinForms only lays out the panels.

Control surface in the documentation → · Modernise a WinForms or WPF app →

Coming next

Everything a complete application UI and the modernisation of old WinForms and WPF apps still need is planned and will be built. Until a point is built, it stays on this list — with no date, because none is set.

Planned Planned for Board, Styling and controls

No dates: these are decided, not scheduled. The whole list is on the roadmap.

What stays out

Built and planned across the whole product: Roadmap. Gaps of the grid itself: What it does not do yet.