Description
Blazor gives you the ability to write rich web apps with C# rather than jаvascript. Telerik UI for Blazor components have been built from the ground-up to ensure you experience shorter development cycles, quick iterations and cut time to market.
Template Support
With native components, the Telerik UI for Blazor Grid templates can fully utilize the best features of Blazor to highly customize the user experience.
Native Blazor Validation Integration
The UI for Blazor suite supports and integrates seemlessly into Blazor's Forms and Validation infrastructure. All Telerik UI for Blazor Input components work out of the box when placed inside an EditForm, respond to EditContext changes and provide default invalid styles.
Modern design
Telerik UI for Blazor provides Material, Bootstrap and Default themes that you can use to achieve modern design of your Blazor application. Thanks to the Theme Builder you can even customize the existing themes or create a new one to fit your needs.
What is Blazor
Blazor is a new framework by the Microsoft ASP.NET team that introduces a next generation component model that allows developers to write Single Page Applications (SPA) without jаvascript. If Blazor sounds new to you that’s because it has only been in development less than a year, and as an experimental project. Initially the Blazor framework targeted the Mono WebAssembly runtime (the .NET runtime compiled to wasm), thus allowing .NET to run on the client’s browser inspiring the name “Blazor” (Browser + Razor).
In this configuration the application’s resources including .dll files are delivered to the client and executed the Mono WebAssembly runtime. While the WebAssembly deployment of Blazor is sill in active development a server-side deployment option was introduced called Razor Components.
Blazor Component Model
The Blazor component model is refreshingly simple in its design. Components can contain markup (HTML) and logic (C#) in a single Razor (cshtml) file. The component is capable of handling data binding, events, and dependency injection all without jаvascript.
The Counter Component below demonstrates the basic composition of a Blazor component.
The counter component uses a basic HTML button to increment a counter field which is displayed within a paragraph tag. Because Blazor operates as a single page application all of the interactions in the component happen on the client. Updates to the browser’s Document Object Model (DOM) are handled by the Blazor framework though data binding.
What is Razor Components
Recently Microsoft has announced plans to support the framework when running server-side in a mode called Razor Components. Even more recently, an announcement was made that the same component model will be backwards compatible with ASP.NET Core (MVC) and Razor Pages. All of these cutting edge news and bits dropping around Blazor has our team at Telerik excited for the future of ASP.NET development. Much like Blazor running on WebAssembly, Razor Components allows developers to write Single Page Applications (SPA) without jаvascript.
The key difference between Blazor and Razor Components is the way the application is deployed. Instead of Blazor running via WebAssembly on the client, the Blazor framework runs on the server as an executable. In this mode, ASP.NET Core hosts the application and provides a communication channel using SignalR technology. Using SignalR the application sends UI updates and receives changes and events as binary packets of data over a web socket connection. Since only the changes are sent over the connection, the payload is small and efficient.
Since Razor Components utilizes the Blazor framework, components can be used in both deployment types.
UI for Blazor 4.0.0
January 18, 2023
Common
NEW
- New SvgIcon
- New FontIcon
- New ChipList component
- New Avatar Component
- Deprecate TelerikIcon component in favor of TelerikFontIcon and TelerikSvgIcon
- Update DPL version to 2023.1.104
- Unify rendering
- Unify rendering for ThemeBuilder Pro integration vol.2
- .NET Core 3.1 reaches end of support by Microsoft on December 13, 2022 - https://devblogs.microsoft.com/dotnet/december-2022-updates/#net-core-3-1-end-of-life
Breaking Changes
Dependencies
- Update DPL version to 2023.1.104
- Default Theme Version - 6.0.3
- Bootstrap Theme Version - 6.0.3
- Material Theme Version - 6.0.3
- Fluent Theme Version - 6.0.3
AutoComplete
NEW
- Add AriaLabel parameter
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
- NoData template
Breadcrumb
NEW
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
Button
NEW
- Add AriaLabelledBy and AriaDescribedBy parameters
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate SpriteClass parameter
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
- Deprecate Shape parameter
- Hidden parameter renamed to Visible
ButtonGroup
NEW
- Add AriaLabelledBy and AriaDescribedBy parameters
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate SpriteClass parameter
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
- Deprecate Shape parameter
Calendar
NEW
- WCAG AAA Compliance and Section 508
Card
NEW
- Unify the rendering of the Card Actions buttons
Breaking Changes
- Stretched value renamed to Stretch
Carousel
NEW
- WCAG AAA Compliance and Section 508
Breaking Changes
- Remove OnTimerTick from the public API
Checkbox
NEW
- WCAG AAA Compliance and Section 508
ChunkProgressBar
NEW
- WCAG AAA Compliance and Section 508
ColorPalette
NEW
- WCAG AAA Compliance and Section 508
ColorPicker
NEW
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate IconClass/IconClassField parameter
ComboBox
NEW
- Add AriaLabel parameter
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
- NoData template
ContextMenu
NEW
- WCAG AAA Compliance and Section 508
FIXED
- Escape key triggers JS error when there is no target
- Url items are missing a hover state
DateInput
NEW
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
- Support Copy&Paste
- Control over switching date segments (auto-tab)
FIXED
- Value should update immediately on blur, and not wait for the debounce delay period
DatePicker
NEW
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
- Support Copy&Paste
- Control over switching date segments (auto-tab)
FIXED
- Value should update immediately on blur, and not wait for the debounce delay period
DateRangePicker
NEW
- WCAG AAA Compliance and Section 508
- Support Copy&Paste
- Control over switching date segments (auto-tab)
FIXED
- Value should update immediately on blur, and not wait for the debounce delay period
DateTimePicker
NEW
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
- Support Copy&Paste
- Control over switching date segments (auto-tab)
FIXED
- Value should update immediately on blur, and not wait for the debounce delay period
Dialog
NEW
- WCAG AAA Compliance and Section 508
Breaking Changes
- Stretched value renamed to Stretch
Drawer
NEW
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
- Position values renamed from Left and Right to Start and End
DropDownList
NEW
- Add AriaLabel parameter
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
- NoData template
Breaking Changes
- Deprecate DefaultItem parameter (DefaultText to be used instead)
Editor
NEW
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate SpriteClass parameter
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
FileManager
FIXED
- Missing icon for video and programming files
Filter
NEW
- WCAG AAA Compliance and Section 508
FIXED
- Async code in the ValueChanged event handler prevents the re-render of the component.
Form
NEW
- Add AutoComplete Parameter
- Add size component option
- OnUpdate event
Breaking Changes
- Stretched value renamed to Stretch
Gantt
NEW
- WCAG AAA Compliance and Section 508
- CheckBoxListFilter data should be sorted in ascending order by the value by default
- Add HeaderClass parameter to Gantt column
Breaking Changes
- Deprecate Primary parameter from command button (ThemeColor to be used instead)
- Add Template suffix to ToolBar fragment
Grid
NEW
- WCAG AAA Compliance and Section 508
- CheckBoxListFilter data should be sorted in ascending order by the value by default
- Compact Grid
- Enhance boolean data display
FIXED
- Add Grid_Csv localization key ("Export to CSV")
- Header cells should not reserve space for a filter icon if filtering is disabled per column
- Filter Templates are not affected by setting the filters through the Grid State
Breaking Changes
- Deprecate Primary parameter from command button (ThemeColor to be used instead)
- Add Template suffix to ToolBar fragment
- Add Async suffix to asynchronous methods
- Remove `NumberFormat` and `Width` from the `OnBeforeExport` for CSV
ListView
NEW
- WCAG AAA Compliance and Section 508
MaskedTextBox
NEW
- Add AriaLabel parameter
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
Breaking Changes
- PlaceHolder parameter renamed to Placeholder
Menu
NEW
- WCAG AAA Compliance and Section 508
FIXED
- Url items are missing a hover state
Breaking Changes
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
MultiColumnComboBox
NEW
- Add AriaLabel parameter
- AriaLabel parameter
- NoData template
MultiSelect
NEW
- Add AriaLabel parameter
- WCAG AAA Compliance and Section 508
- NoData template
Notification
NEW
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate SpriteClass parameter
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
NumericTextBox
NEW
- Add AriaLabel parameter
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
PDFViewer
NEW
- Close PDF Viewer popup automatically after printing
Pager
NEW
- WCAG AAA Compliance and Section 508
- Add size component option
PanelBar
FIXED
- Navigation logic is executed on keydown that originates from item content template
Breaking Changes
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
ProgressBar
NEW
- WCAG AAA Compliance and Section 508
RadioButtonGroup
NEW
- Add AriaLabelledBy and AriaDescribedBy parameters
- WCAG AAA Compliance and Section 508
- Add ItemTemplate
RangeSlider
NEW
- WCAG AAA Compliance and Section 508
RootComponent
NEW
- IconType parameter supports rendering of svg icons and font icons
Scheduler
NEW
- WCAG AAA Compliance and Section 508
Signature
NEW
- WCAG AAA Compliance and Section 508
Slider
NEW
- WCAG AAA Compliance and Section 508
SplitButton
NEW
- Add AriaLabelledBy and AriaDescribedBy parameters
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate SpriteClass parameter
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
- Deprecate Shape parameter
Splitter
NEW
- WCAG AAA Compliance and Section 508
Stepper
NEW
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate SpriteClass parameter
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
Switch
NEW
- WCAG AAA Compliance and Section 508
TabStrip
NEW
- WCAG AAA Compliance and Section 508
TextArea
NEW
- Add AriaLabel parameter
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
Breaking Changes
- PlaceHolder parameter renamed to Placeholder
TextBox
NEW
- Add AriaLabel parameter
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
Breaking Changes
- PlaceHolder parameter renamed to Placeholder
TileLayout
NEW
- WCAG AAA Compliance and Section 508
TimePicker
NEW
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
- Support Copy&Paste
- Control over switching date segments (auto-tab)
FIXED
- Value should update immediately on blur, and not wait for the debounce delay period
ToggleButton
NEW
- Add AriaLabelledBy and AriaDescribedBy parameters
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate SpriteClass parameter
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
- Deprecate Shape parameter
ToolBar
NEW
- WCAG AAA Compliance and Section 508
- AriaLabel parameter
- Add size component option
FIXED
- Adaptive Toolbar overflow button not visible on initial load
Breaking Changes
- Deprecate SpriteClass parameter
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
- Adaptive parameter value is now true by default
Tooltip
NEW
- WCAG AAA Compliance and Section 508
TreeList
NEW
- CheckBoxListFilter data should be sorted in ascending order by the value by default
- Enhance boolean data display
FIXED
- Add Grid_Csv localization key ("Export to CSV")
- Dynamic TreeList columns cannot be resized
- Header cells should not reserve space for a filter icon if filtering is disabled per column
- Filter Templates are not affected by setting the filters through the Grid State
Breaking Changes
- Deprecate Primary parameter from command button (ThemeColor to be used instead)
- Add Template suffix to ToolBar fragment
- Add Async suffix to asynchronous methods
TreeView
NEW
- TreeView OnItemRender event
Breaking Changes
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
Window
NEW
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate IconClass/IconClassField parameter
Wizard
NEW
- WCAG AAA Compliance and Section 508
Breaking Changes
- Deprecate ImageUrl/ImageUrlField parameter
- Deprecate IconClass/IconClassField parameter
PdfProcessing
NEW
- Introduced support for Encryption Algorithm 5 with AES-256.
- Introduced Find API allowing the user to search for concrete text in a PDF document.
FIXED
- A specific scanned file is not displayed with the new model.
- Some Image XObjects are imported but not displayed in PdfViewer.
- A CryptographicException related to AES algorithm padding is thrown.
- A NotImplementedException is thrown when editing and exporting text with CID font and CFF font source.
- An InvalidOperationException is thrown when importing a PDF document and parsing a name start character followed by a dictionary end one.
- Some documents are rendered as blank pages when a specific culture is set in .NET 5 (or later) project.
- EndOfStreamException is thrown when importing a document containing an EI keyword not followed by а space or return.
- Text is extracted with missing characters when there are glyphs mapped to two or more Unicode character values.
SpreadProcessing
FIXED
- Relationship Id error when parsing an image with a hyperlink without ID.
- Shared formulas do not work when there is no cell reference in the cell element.
SpreadStreamProcessing
FIXED
- A NotSupportedException is thrown when importing content in rich text.
CHANGED
- When creating a SpreadPatternFill with SpreadPatternType 'Solid', PatternColor and BackgroundColor property values are swapped.
WordsProcessing
NEW
- Introduced Table Of Contents - TOC field.
- Introduced Table Of Authorities - TOA field.
FIXED
- An exception is thrown when converting HTML to PDF and the HTML contains an image with no source.
- DocFormatProvider: KeyNotFoundException is thrown when importing *.doc file with .NET Core assemblies.
- PageRefField is not successfully updated when there is more than one bookmark in the same empty paragraph.
- DocxFormatProvider: An InvalidCastException 'Unable to cast object of type 'EffectContainerElement' to type 'EffectListElement' is thrown on import.
- Importing HTML with base64 encoded image without extension causes a missing image when exported to PDF.
- Header/footer is wronly exported when the document's first section is of type continuous.
- DocxFormatProvider: FormatException is thrown when importing a document containing shapes with opacity set with a fractional value, like this 39151f.