.NET MAUI GA Release
As you probably know, Microsoft released .NET MAUI to production recently. Our free .NET MAUI product line for mobile development (with Android and iOS) is compatible with this .NET MAUI release. To see what is new in v22.1, please follow this link. If you are migrating from Xamarin, please check out Microsoft migration guidelines and also our article on navigation control changes.
We thank those of you who explored our preview builds and shared feedback via the DevExpress Support Center and developer surveys.
Getting Started
To get started with DevExpress .NET MAUI mobile controls, please use our tutorials and examples in the Online Documentation. Our Project Templates will also help you create your first .NET MAUI app with grids, charts, and other DevExpress controls in a matter of seconds, automatically.
If you missed it, yes, the preview of our .NET MAUI controls and our production-ready Xamarin UI components are available free-of-charge. If you have yet to obtain your free copy of our mobile components, please register for this free offer today.
Windows Desktop Support (WinUI) - Experiments Ongoing
As you may already know, our .NET MAUI controls are currently available for mobile development with Android and iOS. Our mobile product line primarily exists to help existing DevExpress customers (WinForms, WPF, WinUI, ASP.NET or XAF) build mobile companion apps in addition to their existing desktop or web apps. Our current vision does not include desktop support at this stage. We ran a couple of surveys and they confirmed low interest from our customers in this direction, especially with regard to Linux or macOS desktop support. Windows desktop support (with WinUI) was a bit more popular in requests, but it is still insufficient for us to heavily invest into. We are still looking forward to the adoption of the WinUI and may revise our .NET MAUI plans in 2023.
Although we have not planned to support .NET MAUI desktop in 2022, we are still excited about the capabilities that .NET MAUI offers for cross-platform UI development, and for the desktop form-factor in particular. For this, our R&D team made a few spikes for WinUI support in our .NET MAUI controls that make sense in desktop apps (for example, data grids, charts and certain editors). Below you can see a screenshot of our .NET MAUI data grid, a wrapper above our WinUI component (powered by our WinUI product line). We have also tested a few other simpler controls like text box or button. This is NOT by all means a commitment to support WinUI in our .NET MAUI controls - just honestly sharing where we are at with this in 2022.
Future Plans
Here are just a few big things we are planning to work on for the next major release (v22.2) at the end of 2022. As always, we will keep posting information on additional capabilities in this blog.
Support Cross-Platform DevExpress.Data Library
We will migrate our mobile-specific fork/clone to the full-featured version of the DevExpress.Data library currently used by all DevExpress customers on other .NET UI platforms. This migration will help us:
- Deliver a seamless user experience (API-wise) for DevExpress customers who have used our WinForms, WPF and ASP.NET components in the past.
- Make code sharing across multiple platforms easier. Example: Presently, our .NET MAUI customers are using CriteriaOperator from the "DevExpress.XamarinForms.Core.Filtering" namespace. In the future, these customers will use the "DevExpress.Data.Filtering" namespace instead.
- Automatically add new features to our .NET MAUI data grid, collection view, etc. Example: advanced mask input and performance enhancements powered by the DataController from our WinForms/WPF data grids or the new CriteriaOperator.FromLambda API.
Simplify .NET MAUI Control Localization
At present, you can only localize our .NET MAUI controls if you set localized values to component properties in code. In v22.2, we hope to make it easier for our .NET MAUI customers to localize controls using options that mirror ours WinForms, WPF and ASP.NET product lines:
- Static: satellite assemblies downloaded from the DevExpress Localization Service or NuGet (example);
- Dynamic: runtime localizer objects (example).