github radzenhq/radzen-blazor v11.4.2
11.4.2

8 hours ago

11.4.2 - 2026-09-22

Improvements

  • Chart adds ShowScrollbar so a chart with AllowZoom or AllowPan can skip its own scrollbar and the 20px reserved below the plot, letting a standalone RangeNavigator drive several synchronized charts while mouse wheel zoom keeps working and the bound ViewStart and ViewEnd follow the navigator. New Synchronized Charts example on the Range Navigator page.
  • Timeline adds process-tracker support: RadzenTimelineItem.LineStyle styles the connector running from an item to the next, Current marks the step in progress with aria-current="step" and a ring drawn from the point's own color, PointClass reaches the point element, and --rz-timeline-line-gap and --rz-timeline-point-font-size CSS variables control the gap around the point and the glyph size. The line is split into a leading and a trailing half and positioned with logical properties so it renders correctly in RTL (#2697). Thanks to @pianomanjh!
  • Spreadsheet adds Workbook.SaveToStreamAsync overloads taking (CellData? Data, Format? Format)[] rows so streamed exports can apply number and date formats and styled blank cells while preserving value types (#2725). Thanks to @pianomanjh!
  • Premium themes updated.

Fixes

  • Chart SyncGroup registration is scoped to the Blazor circuit. The registry was process-wide, so on Blazor Server every circuit using the same group name shared it and a hover broadcast into charts owned by other circuits, whose refresh failed the renderer dispatcher check and froze the hovered chart on its last tooltip.
  • DatePicker with Immediate keeps the typed text while the user is still typing. Every prefix that parsed as a valid date updated the bound value and the re-render pushed the formatted value back into the input, so typing 2026-03-04 ended up as 3/1/2026 2:00:00 AM4.
  • DatePicker parses typed input from the change event and updates the bound value before any JS interop, so on Blazor Server clicking Save right after typing an invalid time such as 24:00 no longer validates a stale value (#2730). Thanks to @MiklosPathy!
  • JS interop fire-and-forget calls issued from Dispose and on live paths are now awaited inside a guard, so on Blazor Server a circuit teardown no longer logs unobserved JSDisconnectedException as AggregateException through TaskScheduler.UnobservedTaskException. RadzenMediaQuery alone, present on every page through RadzenSidebar, produced one per circuit (#2729). Thanks to @raphac!
  • Demos keep parameter names when trimming so Edit Source compiles interpolated strings with format specifiers such as {value:F2} on the Zoom and Pan and Range Navigator pages.

Don't miss a new radzen-blazor release

NewReleases is sending notifications on new releases.