What it does not do yet

Stated here rather than discovered later. Everything below is a real gap, not a simplification of one — if a page in these docs describes something, it exists.

Early preview

ArionUI is at version 0.1.0-preview.1. The API still moves, and breaking changes are expected between preview versions; the repository lists them. We do not recommend the preview for production systems yet. The Pro packages are free of charge during the preview, also for commercial use. Licence terms for versions without a preview suffix are not decided; a preview version you have obtained stays usable under its preview licence.

Not built yet

  • Touch gestures. One finger works like a mouse. Pinch, swipe and the other multi-finger gestures are not built.
  • A mirrored right-to-left layout. Bidirectional text inside a cell is built, but the grid itself always lays out left to right: columns, scroll bars and chrome are not mirrored.
  • IME pre-edit. The text being composed in an input method is not shown inside the editing cell. The candidate window is placed at the caret on the three hosts; an input method on WPF that only asks its own text store for a position can still stay at the corner of the window.
  • The WinForms host as a package. The WinForms control, ArionGridControl, builds and runs, but nothing ships it yet. Avalonia and WPF are packages. A package is planned (roadmap).

Board, styling and controls: a preview with a short control list

Boards, style sheets and the drawn controls are in preview. They carry dashboards, cockpits, feeds and simple forms today; a complete business application needs more than the dozen controls there are. Built: button, one-line text box, check box, toggle switch, slider, drop-down button, label, separator, spacer, menu row, drawing surface, stack panel, scroll panel, card, board, view tile and element tile (Controls). Missing, and planned:

  • Tab control
  • Radio buttons and option groups
  • A combo box as a control: a value, type-ahead, editable
  • Multi-line text box
  • Numeric up-down and date picker as stand-alone controls
  • Menu bar, toolbar and context menus on controls
  • Draggable splitters, and docking later
  • Image control
  • Tooltips on controls
  • A validation state on controls: an error text and an Invalid state for style sheets
  • Board layout persistence, and moving tiles with the mouse

Controls read your objects through Func<> and write through Action; there is no binding layer for them, and a view model tells a board about changes by hand for now. A native WinForms or WPF control cannot be placed inside a board tile. There is no designer. Everything planned, with the reason it matters, is on the roadmap.

Accessibility: built, with gaps on Avalonia

The grid exposes UI Automation on all three hosts, from one source — the grid's own accessibility layer — so the sentences, rectangles and actions are the same on each and only the host-specific peers differ. On WPF the grid is a data grid with cells carrying the grid, table, scroll, value, toggle and invoke patterns; on Avalonia there are cell and header peers; on WinForms an MSAA tree. Rows, headers, the drawn panes and menus are elements too. The system's Reduce Motion and high-contrast settings are followed.

It has been tested with Narrator and NVDA, by an automated listening test and by hand. Known gaps: on WPF, NVDA announces a table tile as a "grouping" rather than a "table". Avalonia 12.1 has no grid or table provider at all, so table navigation commands of a screen reader do not follow rows and columns there: the column header is part of the cell's name instead. If your application has an accessibility obligation, test with your readers before you decide.

Text

Text is shaped with HarfBuzz by default, with fallback to an installed font for characters the requested font lacks, so CJK, Indic and Arabic scripts and colour emoji draw as glyphs. Two limits remain.

  • Fallback uses the fonts installed on the machine. A machine without a font for a script still shows boxes, and the same data can look different on two machines.
  • If the native HarfBuzz library is missing, or you switch to ArionFonts.Shaping = Simple, text goes back to one glyph per character. Latin, Greek and Cyrillic stay fine; joined scripts such as Arabic and Indic are then wrong, and characters the font does not carry are boxes.

Packaging and API surface

  • Binding. Both the Avalonia and the WPF control expose bindable properties — ItemsSource, MainView, SelectedItem, SelectedItems, CurrentCell, VisualTheme — and ICommand inputs such as RowActivatedCommand. Columns are declared in code on a GridView, not in XAML. In WPF markup the Actions property cannot be bound, because it has no CLR setter; that one binding is made in code (MVVM and binding).
  • German defaults. The built-in texts — menus, dialogs, validation messages, screen-reader sentences, the empty-state title, the pivot's grand total — are German until the application switches them, and a few log lines are German too. See Localisation.
  • Pro packages are closed source. Grouping, pivot, charts, timeline, planning, conditional formatting, layout persistence and export are separate NuGet packages whose source is not public. The engine they build on is open under Apache-2.0.
  • Pro without a licence key. A preview version needs none and draws no watermark. Later release versions check a soft offline licence key; the terms for them are not final.

Between the hosts

All three hosts map input and hand the frame to the platform; the grid, the interaction and the renderer are shared. What holds them together is checked by scripts rather than asserted: scripted runs on Avalonia and WPF are compared state line by state line in five themes, and the 3D scenes are compared pixel by pixel across all three hosts. There is no cross-host pixel comparison for the 2D grid. What protects it is the shared renderer and a pixel check against checked-in reference images.

Accessibility differs by host, as above, and the WinForms host is not part of the cross-host benchmark yet.

Note

If a feature matters to you, try it on the host you will ship on before deciding.

What is built, in case a list said otherwise

These arrived after some older notes were written, and are sometimes still listed as missing elsewhere:

  • Screen-reader support through UI Automation and MSAA on all three hosts (see above for the gaps).
  • Text shaping with HarfBuzz, font fallback, and bidirectional text inside a cell.
  • Bindable properties and ICommand inputs for MVVM.
  • Avalonia, WPF and WinForms hosts over one renderer; the Avalonia and WPF hosts are NuGet packages, the WinForms host is not yet.
  • Search with match highlighting; undo and redo in the grid; column chooser; column resize, auto-size and reorder; master-detail; tree grid; banded headers.
  • Pro packages: grouping, pivot with a field list and drill-down, charts, GPU surface charts, timeline view, planning matrix, conditional formatting with a rule manager, layout persistence, and CSV, XLSX and PDF export.

Where the current answer lives

This page is written from the project's own notes and will drift. The list that does not is the repository, with its README and open issues: github.com/ArionUI/ArionUI. What is decided and coming is on the roadmap.