DevExpress ASP.NET and Blazor 23.2.3

Released: Dec 13, 2023

Atualizações na 23.2.3

Recursos

Microsoft ASP.NET Core

  • Added Microsoft .NET 8 support.
  • Look and Feel
    • New Fluent Theme - ASP.NET Core v23.2 ships with a new Microsoft Fluent inspired web theme. The theme includes the following capabilities:
      • Accessible components with contrast color support.
      • Two size modes: Standard and Compact.
      • New icon package.
    • ThemeBuilder Enhancements - Introduced numerous enhancements to the ThemeBuilder tool. Enhancements include:
      • Integration of the new Fluent theme.
      • Advanced ThemeBuilder settings were expanded to incorporate all possible states of Button and ButtonGroup.
      • Added a new set of variables for editors.
    • Material Theme Enhancements - This release includes the following changes to Material theme:
      • To address accessibility-related issues, the disabled state for the Button component now includes a higher contrast color combination.
      • Updated the appearance of the ButtonGroup component to ensure consistency with Google's Material Design guidelines.
      • Different text editor (type) boxes are now the same height. Thanks to higher contrast color combinations, the content of label and placeholder elements are also accessible.
      • Multiple changes have been introduced within the DevExtreme Accordion component. The spin icon uses a higher contrast color combination. The component's overall style is more consistent with those outlined in Google's Material Design guidelines.
      • To avoid help text overlapping with nearby items, the validation message now uses a contrasting background.
      • Two icons were changed to make the overall icon set consistent.
      • Changed the Slider's tooltip to make it more consistent with Material guidelines.
      • The List component also better matches Material guidelines (no accent colors).
      • The Form was improved to avoid vertical item misalignment between groups.
      • The PivotFieldChooser includes full-fledged DevExtreme font icons (in previous versions, icons were SVG based).
  • Scheduler
    • Work Shift Support - In v23.2, the ASP.NET Core Scheduler introduces an Offset display option, allowing you to configure enterprise work day offsets and accommodate work shift variations, time zones, and other related usage scenarios.
  • Calendar
    • Multi-Selection of Discrete Days - The new Calendar SelectionMode option offers three modes: single, multiple, or range selection.
      • Single - select a single date.
      • Multiple - choose multiple dates.
      • Range - select the first and last dates in a range.
      • You can set a single date or an array of dates as the initial value. You can also use the SelectWeekOnClick option to allow selection of an entire week by clicking on associated week numbers.
  • Tabs and TabPanel
    • Vertical Tabs Orientation - For Tabs, added a new Orientation option that allows you to arrange tabs either horizontally or vertically.
    • Custom Tabs Position - For TabPanel, the new TabsPosition option allows you to locate tabs on the right, left, top, or bottom of the panel.
    • Custom Icon Position - Both Tabs and TabPanel now include an IconPosition option, allowing you to define where icons are displayed within Tabs (start, end, top, or bottom position).
    • Secondary Styling Mode - You can now specify a styling mode for the active tab. The following styling modes are available:
      • Primary - the width of the underline is fixed.
      • Secondary - the width of the underline depends on tab content.
  • Form and Editors
    • Change Detection (Dirty State) - v23.2 includes the following changes:
      • Renamed the reset method to Clear for uniformity and introduced a new Reset method for editors to maintain reset functionality.
      • Deprecated the Form's ResetValues method, replacing it with Clear, and introduced a new Reset method for the entire Form.
      • Added the IsDirty property for both editors and Form. IsDirty helps detect changes in Form items or editors.
    • DateRangeBox Support - You can now use editorType: 'dxDateRangeBox' to add the DateRangeBox component to a Form.
    • 'Outside' Label Mode - v23.2 includes a new 'outside' label mode for editors.
    • DropDownButton - New 'Type' Option - The ASP.NET Core DropDownButton includes the Type property like its Button counterpart.
  • Accessibility
    • The following accessibility-related enhancements have been introduced in this release cycle (WCAG and Section 508 standards):
      • Data Grid:
        • Improved color contrast.
        • All checker errors (Axe, WAVE, Lighthouse) were fixed.
        • Adaptive rows can now be expanded/collapsed using keyboard navigation.
        • Added the ability to focus on total summary and group footer summary.
      • Enhanced the reading experience for screen reader users. The following elements are now supported:
        • Modified cells and deleted rows in DataGrid batch edit mode.
        • Delete confirmation messages in DataGrid.
        • Sort header indexes in DataGrid.
        • Items in Lookup.
        • Dialog titles in HtmlEditor.
        • Validation messages in various components, such as DataGrid, HtmlEditor, DropDownBox, NumberBox, DateBox.
        • Global rework of aria-* attributes.
        • Improved keyboard navigation support for multiple components, including enhanced focus in the Calendar component.
        • Updated visual focus indication in the Popup and other components.
  • Performance
    • Vite Tree Shaking Support - Addressed Vite support restrictions that previously lead to a larger JS bundle size. You no longer need to disable Vite's Tree Shaking feature in your DevExtreme-based JS applications.
    • Reduce CSS Size - The DevExtreme package includes all Generic and Material themes. Reduced theme set size as follows:
      • 30% for Generic themes.
      • 37% for Material themes.
      • 34% overall.

Blazor

  • You can now identify and localize non-translated strings in your DevExpress-powered .NET apps.
  • Microsoft .NET 8 Support
    • DevExpress Blazor components now offer full support for the latest .NET 8 release.
  • Blazor Server-side Rendering (SSR) Support
    • The Static render mode (SSR) introduced in .NET 8 allows Blazor to render components and pages on the server without a socket connection or WebAssembly files. While the majority of DevExpress Blazor components are designed for interactive use, the following components now offer support for Static render mode:
      • Grid and Pivot Grid (to display static data in a single page).
      • Menu and TreeView (to display one level of hierarchy).
      • Wait Indicator and Loading Panel (to indicate progress with streaming rendering).
      • Form Layout (excluding tabs and collapsible groups).
      • Grid Layout and Stack Layout.
  • New Project Templates
    • New DevExpress Blazor project templates are in sync with major changes to the project structure introduced in .NET 8. The templates now provide:
    • A new navigation menu optimized for .NET 8’s Static render mode.
    • Support for configurable interactive render modes (Server, WebAssembly, Auto).
    • Refreshed appearance for the side navigation menu and other visual enhancements.
  • Bootstrap v5.3 and Dark Mode Support
    • DevExpress Blazor components now support Bootstrap v5.3. They also seamlessly integrate with the Color Mode feature introduced in this Bootstrap version. You can also select a default Bootstrap theme with dark mode enabled in the Project Wizard (when creating a new Blazor application).
  • New UI Kit for Figma
    • The new Figma UI Kit for Blazor includes ready-to-use components engineered to promote/maintain UI consistency and simplify complex design processes.
  • Adaptivity Enhancements
    • The adaptivity engine has been extended. It now assesses various device and browser settings to determine when to display mobile-friendly user interfaces. This ensures a more effective user experience, preventing mobile interfaces from appearing on systems equipped with touch monitors and a mouse. These adaptivity-related enhancements extend to the following DevExpress Blazor components:
      • Grid (Column Chooser window).
      • Date Edit (the calendar).
      • Popup.
      • Menu (the hamburger menu).
      • Toolbar (submenus).
  • Accessibility Enhancements
    • Introduced a series of accessibility-focused enhancements for the following components:
      • Grid.
      • Data Editors.
      • TreeView.
      • Toolbar.
      • Menu and Context Menu
    • These enhancements include:
      • Alternative text descriptions for all elements.
      • Adjusted element structure to ensure better compatibility with screen readers.
      • New WAI-ARIA attributes and roles.
      • Improved keyboard support.
  • Grid
    • Cell Editing (CTP) - The Blazor Grid now supports Cell Editing. In this new edit mode, you can activate cell editors and post changes without pressing the Grid’s Edit and Save buttons. Cell editing starts with a single cell click or Enter key press on a cell focused with the keyboard. You can navigate between cells with the keyboard and automatically post changes once focus leaves the edited row. Cell Editing supports validation and can seamlessly work with automatically generated editors, editors defined with EditSettings, and DevExpress editors specified within CellEditTemplate.
    • Grouping and Caching Support for DevExtremeDataSource / CustomDataSource -You can now introduce data grouping support in the Blazor Grid when it is connected to remote data using DevExtremeDataSource or CustomDataSource. The Grid component requests information about groups from the server without loading all records and calculates group summaries (totals) on the server side. In addition, both DevExtremeDataSource and CustomDataSource now ship with built-in record caching. Caching improves Grid usability and reduces the number of requests, especially for those using Virtual Scrolling mode.
    • Hierarchical Filter Menu - The Blazor Grid now features a hierarchical filter menu for DateTime columns. This feature allows you to group available dates by month and year and simplify record filtering within specific date ranges for your users.
    • Column Auto Fit - To help improve data presentation and information clarity, DevExpress Blazor Grid columns can now automatically modify width to fit actual content. You can trigger this functionality via the Grid's API (using the AutoFitColumnWidths method) or with a simple double-click on the column delimiter/separator.
    • Toolbar - The Blazor Grid now includes a new toolbar area positioned above its headers and the group panel. This area allows you to add any content within it. It works particularly well with the Blazor Toolbar, which automatically adapts its style to match the Grid.
    • Shortcuts and Keyboard Support Enhancements - Introduced the following enhancements to improve keyboard support in the Blazor Grid:
      • Built-in popups and windows are now more accessible.
      • The focus border now appears only when a user navigates through Grid elements with the keyboard and disappears after mouse navigation.
      • Addressed a number of navigation-related issues.
      • Additionally, the Blazor Grid now includes more shortcuts so that users can quickly navigate through data:
        • Home/End - Focuses the first/last cell of the current row.
        • Ctrl + Home/Ctrl + End - Focuses the first/last cell on the current page.
        • Page Up/Page Down - Moves focus one page up/down.
        • When the pager is focused, you can use the following shortcuts to navigate between Grid pages:
        • Arrow Left/Arrow Right - Navigates to the previous/next page.
        • Home/End - Navigates to the first/last page.
  • Charts
    • WASM Performance Enhancements - Improved Blazor Chart-related performance for WebAssembly applications. While beneficial for any WebAssembly app, WASM performance-related enhancements are of highest impact when working with large datasets. In such scenarios, DevExpress Blazor Charts will load up to 5 times faster.
    • Live Update Enhancements - The DevExpress Blazor Chart now handles parameter and data source updates more efficiently. Instead of performing a full refresh, it only sends necessary changes to its engine. This results in significantly faster updates, and the Chart maintains its visual state, including zoom and scroll position, after an update.
    • Palettes - The Blazor Chart allows you to create your own custom palettes. Additionally, you can specify how the Chart extends colors when the number of series is greater than the number of colors in a palette using the PaletteExtensionMode property.
    • Zoom Selected Area - The new AllowDragToZoom property allows users to zoom the Chart by selecting an area using a drag gesture. To pan the Chart in this instance, users must press the key specified by the PanKey property. You can also use the new DxChartZoomAndPanDragBoxStyle component to configure color and opacity of the box that appears when a user selects a chart area.
    • Financial Series - Reduction Colors - The Blazor Chart can now automatically compare each point value in a financial series to the value of the previous point and highlight the points where values have decreased (using a specific color). This capability helps users monitor market-related changes. Additionally, you can now customize the fill color for the body of a series point (one that represents a non-reduced value in a Candlestick Series) using the InnerColor property.
    • Font Customization - You can customize font settings for DevExpress Blazor Chart elements, including Axis titles, Axis labels, Series labels, and Constant line labels. The new DxChartFont component offers settings such as color, font family, opacity, size, and weight.
    • API Enhancements - The Blazor Chart API has been extended and now offers more than 60 new members designed to customize Chart appearance and behavior.
  • Editors
    • New List Box - The DevExpress Blazor List Box has been rewritten from the ground up. Although the public API remains unchanged, both visual and data layers are entirely new. This update introduces improved performance and stability while serving as a solid foundation for future enhancements. The new ListBox is already in use within the Grid’s Filter Menus, Scheduler, and RichEdit dialogs. It will also replace the current list implementation in the ComboBox and TagBox in future updates.
    • Calendar - Keyboard Support - The DevExpress Blazor Calendar allows users to access all its UI elements, select dates, and navigate between them using the keyboard.
  • Navigation
    • Toolbar, Menu & Context Menu - Focus and Keyboard Support - The Blazor Toolbar, Menu, and Context Menu components are now fully accessible with the keyboard. They support keyboard navigation within items, menus, and sub-menus, and highlight the current (focused) item.
    • Toolbar - New Adaptivity Engine - The Blazor Toolbar features a new adaptivity engine. It works faster and ensures that items hide or minimize consistently, and the component smoothly responds to external size changes.
  • Reporting
    • Web Report Designer - WebAssembly Support - You can now use DevExpress Web Report Designer in Blazor WebAssembly Apps and generate documents on the client-side. Leverage the Print Preview functionality to view changes made to the report in the designer immediately.
  •  Rich Text Editor
    • Non-Windows OS Support - Transitioned the Blazor Rich Text Editor's engine from System.Drawing.Common to the DevExpress Drawing graphics library. This upgrade allows Blazor Server, WebAssembly, and Hybrid apps to run on non-Windows platforms (Linux, Mac, Android, iOS, and other Unix-based systems) where the System.Drawing.Common library is not supported.