12.1.3 - 2026-10-15
Improvements
- Row gets a
Columnsparameter that sets how many columns fit on each line, so a layout with a fixed number of columns per line no longer needsSizeon everyRadzenColumn.ColumnsXS,ColumnsSM,ColumnsMD,ColumnsLG,ColumnsXLandColumnsXXchange it per breakpoint. Counts that do not divide 12, such as 5 or 7, work as well andGapis respected. A column with its ownSizefor the current breakpoint keeps it (#2760).
Fixes
- Spreadsheet reads xlsx files with absolute relationship targets and cells without a reference, such as those written by SpreadCheetah, instead of showing empty sheets. A target like
/xl/worksheets/sheet1.xmlwas prefixed withxl/so the sheet was not found, and a<c>or<row>without the optionalrattribute was dropped. Relationship targets are now resolved against their source part, for sheets as well as drawings, images, charts and tables, and a cell or row without a reference takes the position after the previous one (#2757). - RadialGauge and ArcGauge no longer render C# source as text inside every scale tick. The tick label condition in the scale was missing its
@, soif (!string.IsNullOrEmpty(tick.Value))was emitted as a text node in each tick, which screen readers read once per tick, and an empty tick label was rendered even withShowTickLabels="false". - Carousel no longer jumps back to the first item after every navigation in right-to-left pages. RTL scroll containers report a negative
scrollLeft, so the index computed from the scroll position was negative, got clamped to 0 and reset the selection right afterNavigateor a pager click. The scroll handler now uses the absolute scroll offset. - ODataServiceResult survives trimming when an app deserializes it through its own generic code, such as
PersistentComponentState.TryTakeFromJson<T>orJsonSerializer.Deserialize<T>behind an unannotated helper. A trimmed Blazor WebAssembly app kept the type but lost its parameterless constructor and theCountandValuesetters, so System.Text.Json threwNotSupportedException. Radzen.Blazor now embeds a trimmer descriptor that keeps these members whenever an app keeps the type.