Track and review changes to Radzen Blazor Components v7
Breaking Starting from Radzen Blazor v7.0.0 we have dropped the dependency on Roslyn (Microsoft.CodeAnalysis.*) packages. Expression parsing now relies on a home-grown implementation. Some expressions may no longer work.
Breaking Added animations to Popup, Dialog, SideDialog, DropDown, DropDownDataGrid, Notification, Tooltip, Tree, Panel, Fieldest, PanelMenu, Menu, ContextMenu, SplitButton and Accordion. Some of the components used inline style to hide certain content which makes it impossible to animate. We have updated those components to use CSS class based hiding. As a result theme CSS files need to be updated. The free themes should work out of the box as long as they are not cached by the browser (RadzenTheme takes care of cache busting). Premium themes should be updated from Radzen Blazor Studio and Radzen Blazor for Visual Studio. The latest versions of both products would display a warning that the premium theme is outdated and update it automatically without losing any customizations.
Breaking RadzenAccordion now hides its child content using CSS class in order to support animations. The older behavior was to remove the child content entirely.
Breaking We have redone rendering implementation of the month view in RadzenScheduler. The old implementation didn't handle some cases and relied on odd sorting rules. The new implementation is much more robust and should handle a lot more scenarios. The Breaking change is that appointments may not appear in the same order as before.
Track and review changes to Radzen Blazor Components v6
Breaking Starting from Radzen Blazor v6.0.0 we have dropped the dependency on the System.Linq.Dynamic.Core NuGet package. We are now using a home-grown solution based on Roslyn (the C# compiler API). More information can be found in the forum.
MarkupString
support
linkBreaking
Starting from v6.4.0 Radzen.Blazor no longer accepts HTML content in certain string properties - like Text
, Icon
, PagingSummaryFormat
, etc.
We have introduced RenderFragment
based properties where needed.
This change is made to improve the security of our components and to prevent certain XSS attacks.
OLD:
PagingSummaryFormat="Displaying page {0} of {1} <b>(total {2} records)</b>
New:
<PagingSummaryTemplate>
Displaying page @context.CurrentPage of @context.NumberOfPages <b>(total @context.TotalCount records)</b>
</PagingSummaryTemplate>
Track and review changes to Radzen Blazor Components v5.
box-sizing: border-box;
.RadzenAppearanceToggle
- A toggle button to quickly switch between light and dark themes.RadzenTheme
- Use it to load themes to your app.direction: ltr;
rule from .rzi
CSS class.--rz-grid-header-filter-icon-margin
is now --rz-grid-header-filter-icon-margin-inline
--rz-grid-header-title-padding
is now --rz-grid-header-title-padding-inline
--rz-column-drag-handle-margin
is now --rz-column-drag-handle-margin-inline
--rz-grid-filter-icon-margin
is now --rz-grid-filter-icon-margin-inline
--rz-grid-group-header-item-padding
is now --rz-grid-group-header-item-padding-block
--rz-grid-group-header-item-title-margin-inline
--rz-grid-group-header-item-padding-inline
--rz-grid-group-header-gap
--rz-grid-group-header-item-color
--rz-grid-group-header-item-margin
--rz-grid-group-header-items-margin
--rz-datalist-item-vertical-margin
is now --rz-datalist-item-margin-block
--rz-datalist-item-horizontal-margin
is now --rz-datalist-item-margin-inline
--rz-datafilter-item-padding-y
is now --rz-datafilter-item-padding-block
--rz-datafilter-item-padding-left
is now --rz-datafilter-item-padding-inline-start
.rz-paginator-*
are renamed to .rz-pager-*
--rz-paginator-*
are renamed to --rz-pager-*
--rz-pager-gap
--rz-paginator-first-button-margin
--rz-paginator-last-button-margin
--rz-paginator-dropdown-margin
--rz-paginator-numeric-button-margin
--rz-paginator-back-button-hover-color
--rz-paginator-back-button-hover-background-color
--rz-paginator-next-button-hover-color
--rz-paginator-next-button-hover-background-color
--rz-scheduler-prev-next-button-padding
is now --rz-scheduler-prev-next-button-padding-block
and --rz-scheduler-prev-next-button-padding-inline
--rz-scheduler-today-button-margin-left
is now --rz-scheduler-today-button-margin-inline-start
--rz-scheduler-event-padding
is now --rz-scheduler-event-padding-block
and --rz-scheduler-event-padding-inline
--rz-scheduler-prev-button-border-radius
is now split into:
--rz-scheduler-prev-button-border-start-start-radius
--rz-scheduler-prev-button-border-start-end-radius
--rz-scheduler-prev-button-border-end-start-radius
--rz-scheduler-prev-button-border-end-end-radius
--rz-scheduler-next-button-border-radius
is now split into:
--rz-scheduler-next-button-border-start-start-radius
--rz-scheduler-next-button-border-start-end-radius
--rz-scheduler-next-button-border-end-start-radius
--rz-scheduler-next-button-border-end-end-radius
--rz-scheduler-highlight-background-color
- Use it to highlight working hours in day view, or today in calendar view.--rz-tree-node-padding
is now --rz-tree-node-padding-block
and --rz-tree-node-padding-inline
--rz-tree-node-margin
is now --rz-tree-node-margin-block
and --rz-tree-node-margin-inline
vertical-align: middle;
to all images and SVGs inside a Radzen Blazor Component<body>
are applied only when <RadzenLayout>
is used.--rz-dialog-title-padding
is now --rz-dialog-title-padding-block
and --rz-dialog-title-padding-inline
--rz-sidebar-border-right
is now --rz-sidebar-border-inline-end
font-family: var(--rz-icon-font-family)
instead of hardcoded icon font.--rz-accordion-item-padding
is now --rz-accordion-item-padding-block
and --rz-accordion-item-padding-inline
--rz-accordion-icon-margin
is now --rz-accordion-icon-margin-inline
--rz-accordion-toggle-icon-margin
is now --rz-accordion-toggle-icon-margin-inline
--rz-accordion-content-padding
is now --rz-accordion-content-padding-block
and --rz-accordion-content-padding-inline
--rz-accordion-toggle-icon-collapsed-rtl
--rz-accordion-toggle-icon-expanded-rtl
--rz-context-menu-padding
is now --rz-context-menu-padding-block
and --rz-context-menu-padding-inline
--rz-login-register-padding
is now --rz-login-register-padding-block
and --rz-login-register-padding-inline
--rz-login-register-margin
is now --rz-login-register-margin-block
and --rz-login-register-margin-inline
--rz-login-register-button-margin
is now --rz-login-register-button-margin-block
and --rz-login-register-button-margin-inline
--rz-menu-item-icon-margin
is now --rz-menu-item-icon-margin-inline
--rz-menu-item-padding
is now --rz-menu-item-padding-block
and --rz-menu-item-padding-inline
--rz-menu-top-item-padding
is now --rz-menu-top-item-padding-block
and --rz-menu-top-item-padding-inline
--rz-panel-menu-color
is now --rz-panel-menu-item-color
--rz-panel-menu-background-color
is now --rz-panel-menu-item-background-color
--rz-panel-menu-hover-color
is now --rz-panel-menu-item-hover-color
--rz-panel-menu-hover-background-color
is now --rz-panel-menu-item-hover-background-color
--rz-panel-menu-padding
is now --rz-panel-menu-padding-block
and --rz-panel-menu-padding-inline
--rz-panel-menu-item-padding
is now --rz-panel-menu-item-padding-block
and --rz-panel-menu-item-padding-inline
--rz-panel-menu-item-2nd-level-padding
is now --rz-panel-menu-item-2nd-level-padding-block
and --rz-panel-menu-item-2nd-level-padding-inline
--rz-panel-menu-item-margin
is now --rz-panel-menu-item-margin-block
and --rz-panel-menu-item-margin-inline
--rz-panel-menu-item-2nd-level-margin
is now --rz-panel-menu-item-2nd-level-margin-block
and --rz-panel-menu-item-2nd-level-margin-inline
--rz-panel-menu-icon-margin
is now --rz-panel-menu-icon-margin-inline
--rz-panel-menu-icon-2nd-level-margin
is now --rz-panel-menu-icon-2nd-level-margin-inline
--rz-panel-menu-item-3rd-level-color
--rz-panel-menu-item-3rd-level-background-color
--rz-profile-menu-item-icon-margin
is now --rz-profile-menu-item-icon-margin-inline
--rz-profile-menu-padding
is now --rz-profile-menu-padding-block
and --rz-profile-menu-padding-inline
--rz-steps-number-padding
is now --rz-steps-number-padding-block
and --rz-steps-number-padding-inline
<i class="rzi">navigate_next</i>
and <i class="rzi">navigate_before</i>
the component now renders <span class="rzi"></span>
--rz-tabs-icon-margin
is now --rz-tabs-icon-margin-inline
--rz-tabs-tab-padding
is now --rz-tabs-tab-padding-block
and --rz-tabs-tab-padding-inline
<span class="rz-tabview-left-icon rzi" ...
to <span class="rzi rz-tabview-icon" ...
.$button-styles
SCSS map and use $severity-styles-map
and $base-styles-map
to generate CSS for Button styles.--rz-checkbox-margin
is now --rz-checkbox-margin-block
and --rz-checkbox-margin-inline
--rz-checkbox-label-margin
is now --rz-checkbox-label-margin-block
and --rz-checkbox-label-margin-inline
--rz-colorpicker-item-margin
is now --rz-colorpicker-items-gap
--rz-datepicker-header-padding
is now --rz-datepicker-header-padding-block
and --rz-datepicker-header-padding-inline
--rz-datepicker-calendar-padding
is now --rz-datepicker-calendar-item-padding
--rz-timepicker-padding
is now --rz-timepicker-padding-block
and --rz-timepicker-padding-inline
--rz-datepicker-calendar-padding-block
--rz-datepicker-calendar-padding-inline
--rz-datepicker-popup-width
--rz-datepicker-month-dropdown-width
--rz-datepicker-year-dropdown-width
--rz-datepicker-prev-next-icon-size
--rz-datepicker-prev-next-button-border-radius
--rz-datepicker-header-line-height
--rz-dropdown-trigger-icon-margin
is now --rz-dropdown-trigger-icon-margin-block
and --rz-dropdown-trigger-icon-margin-inline
--rz-dropdown-label-padding
is now --rz-dropdown-label-padding-block
and --rz-dropdown-label-padding-inline
--rz-multiselect-checkbox-margin
is now --rz-multiselect-checkbox-margin-block
and --rz-multiselect-checkbox-margin-inline
--rz-dropdown-chips-padding
is now --rz-dropdown-chips-padding-block
and --rz-dropdown-chips-padding-inline
--rz-lookup-search-margin-bottom
--rz-lookup-search-gap
--rz-fieldset-legend-margin
is now --rz-fieldset-legend-margin-block
and --rz-fieldset-legend-margin-inline
--rz-fieldset-legend-padding
is now --rz-fieldset-legend-padding-block
and --rz-fieldset-legend-padding-inline
--rz-fieldset-toggle-margin
is now --rz-fieldset-toggle-margin-block
and --rz-fieldset-toggle-margin-inline
--rz-form-field-filled-padding
is now --rz-form-field-filled-padding-block
and --rz-form-field-filled-padding-inline
--rz-form-field-start-end-padding
is now --rz-form-field-start-end-padding-block
and --rz-form-field-start-end-padding-inline
--rz-form-field-margin
is now --rz-form-field-margin-block
and --rz-form-field-margin-inline
--rz-form-field-filled-numeric-padding
is now --rz-form-field-filled-numeric-padding-block
and --rz-form-field-filled-numeric-padding-inline
--rz-form-field-label-left
is now --rz-form-field-label-inset-inline-start
format_underline
to format_underlined
--rz-listbox-checkbox-margin
is now --rz-listbox-checkbox-margin-block
and --rz-listbox-checkbox-margin-inline
--rz-listbox-header-padding
is now --rz-listbox-header-padding-block
and --rz-listbox-header-padding-inline
.rz-spinner-*
are renamed to .rz-numeric-*
--rz-numeric-input-padding
is now --rz-numeric-input-padding-block
and --rz-numeric-input-padding-inline
--rz-radio-label-margin
is now --rz-radio-label-margin-block
and --rz-radio-label-margin-inline
--rz-radio-margin
is now --rz-radio-margin-block
and --rz-radio-margin-inline
--rz-splitbutton-menu-button-width
--rz-splitbutton-menu-button-padding
--rz-splitbutton-menu-button-font-size
--rz-switch-circle-margin
is now --rz-switch-circle-offset
--rz-text-area-padding
is now --rz-text-area-padding-block
and --rz-text-area-padding-inline
--rz-input-padding
is now --rz-input-padding-block
and --rz-input-padding-inline
$badge-styles
SCSS map and use $severity-styles-map
and $base-styles-map
to generate CSS for Badge styles.--rz-chip-padding
is now --rz-chip-padding-block
and --rz-chip-padding-inline
.rz-growl-*
are renamed to .rz-notification-*
--rz-notification-gap
CSS variable.check_circle_outline
is now check_circle
error_outline
is now error
info_outline
is now info
lightbulb_outline
is now lightbulb
$progressbar-styles
SCSS map and use $severity-styles-map
and $progressbar-base-styles
to generate CSS for ProgressBar styles.Whether you prefer a standalone environment or integration directly within Visual Studio, Radzen provides a powerful toolkit to increase development speed, reduce repetitive coding, and focus on building exceptional applications.
Radzen Blazor Studio is a software development environment that empowers developers to design, build and deploy Blazor applications without the traditional hurdles.
Radzen Blazor for Visual Studio extension streamlines Blazor development within the Visual Studio environment. The Blazor extension you need to boost productivity!
Radzen Blazor Components, © 2018-2025 Radzen.
Source Code licensed under
MIT