All built-in DevExtreme validation features are now available inside the DevExtreme Angular 2 components. You can use dx-validator, dx-validation-group, dx-validation-summary components and all available validation rules in your Angular 2 application.
With the v16.2 release, we've introduced two types of configuration components. The first type provides a convenient and efficient way for binding ‘deep’ properties. The second type allows you to declare collection property items (e.g. DataGrid columns, TabPanel tabs, etc.) via markup.
This release introduces integrated client-side data validation and error indication. Validation rules can be defined in a model by attaching Data Annotation attributes (e.g. Required, StringLength, etc.) to corresponding properties.
With this release, you can submit HTML forms (e.g. @Html.BeginForm, @Ajax.BeginForm) with nested DevExtreme editors out of the box.
Visual Studio developers can now add resources required by ASP.NET MVC Wrappers to an existing MVC project.
DevExtreme is ready to use with jQuery version 3.x.
v16.2 introduces ECMAScript Internationalization API support. You can now localize your DevExtreme applications using the Intl global object.
The grouped DataGrid can request data only for visible groups instead of loading complete data for all groups. This significantly improves the performance of the DataGrid in scenarios involving large amounts of data.
The new onToolbarPreparing event allows you to customize toolbar items (add/delete items, customize item settings).
We have made the following improvements in the row selection feature.
With this release, we've made our Pivot Grid work faster by delegating all data intensive operations (filtering, grouping, summary calculation) to the server.
New options allow you to customize scheduler views individually.
We have improved the performance of all our widgets with non-native scrolling.
With this release, DevExpress HTML5 Tree View introduces dynamic data loading mode. In this mode, only root-level nodes are created when the application starts. Child nodes are loaded when their parent nodes are being expanded.
To learn detailed information on new features and resolved issues, refer to the What’s New in 16.2 list.