eXpressApp Framework - 2019 Roadmap

XAF Team Blog
22 January 2019

The following list outlines the features we have planned for the eXpressApp Framework (XAF) 2019. Our thanks to all those who voted in our roadmap survey. We’ve included vote tallies used to finalize our plans for 2019.

Performance enhancements (v19.1 and v19.2)

Received 22% of the vote in our survey.

Based on survey results, performance must remain our most important focus area. We will further parallelize internal XafApplication.Setup/Start operations to reduce startup time. There are also opportunities to improve both XAF and DevExpress control code for all supported platforms (see the following post from earlier this year). For instance, we will support new XPO server mode components for our grids (XPServerModeView and XPInstantFeedbackView - see the our XPO roadmap) and further improve DetailView load times.

We will also speed up and improve general usability of developer tools like our Model Editor, Solution Wizard, Template Gallery, Application and Module Designers (received 10.5% of the vote in our survey). We look forward to hearing what you find most important here (just a few examples: T410857Q104682T565744).

SPA UI (v19.1 and v19.2)

Received 14% of the vote in our survey.

Offer the new ASP.NET Core and React-based SPA UI for production in the v19.1 timeframe (at least for simple scenarios). We don’t expect to support all extended modules (Security and Validation are the exception) in our initial release. We will support ReportsV2, ConditionalAppearance and other popular modules/functionality in v19.2.

To discuss our new vision, roadmap and technical requirements more effectively with the XAF community, please visit our private discussionforum - exclusively for Universal customers. Feel free to leave comments to this post, email us at xafteam@devexpress.com or submit tickets using the Support Center if you are unable to join the discussion on our forum.

Evolve XAF’s WinForms UI (v19.1 and v19.2)

Received 13% of the vote in our survey.

Continue to evolve XAF’s WinForms UI. Among other changes, we hope to introduce a modern splash form by default, eliminate extra borders in PivotChart editor, nested frames (for instance, DetailPropertyEditor), hide rarely used standard Actions from form templates (T586203T539813T452094), suppress the save confirmation for new unmodified objects (E2114), support collapsible layout groups and retain their states – much like our WebForms UI implementation (S135134). We will also implement new Property Editors for reference or lookup properties based on our WinForms SearchLookUpEdit (T232591T467070Q577870). We'll include a preview in v19.1 and officially ship in v19.2.

.NET Core 3 and Visual Studio 2019 Support (v19.1 and v19.2)

Received 13% of the vote in our survey.

Support .NET Core 3.0 for WinForms and the new ASP.NET Core and React-based SPA UI. The DevExpress WinForms team has announced plans for .NET Core 3 (refer to the following blog post for more information). We will do everything we can to support .NET Core 3 this year. As you can imagine, much of our output will be shaped by the .NET Core API itself (no ASP.NET WebForms – changes to Middle Tier Security because of pruned WCF support, etc.).

Add support for Visual Studio 2019. We need to update and test our extensions for Item and Project Templates, Application and Module Designers, Model Editor and EasyTest integration. v18.2.4 will already cover a lot of these, but other tasks such as support for AsyncPackage will be completed with the official release of Visual Studio 2019.

A More Platform-Agnostic Approach (v19.2)

Received 10% of the vote in our survey.

Make certain platform-agnostic XAF features like security, validation, and audit are available to non-XAF developers who create custom user interfaces with Xamarin, React, Vue and other client technologies. We hope to produce more tutorials and samples like How to: Use the Integrated Mode of the Security System in Non-XAF Applications (with a focus on Microsoft Azure deployment).

Enhancements to Non-Persistent Objects (v19.2)

Received 9% of the vote in our survey.

Non-Persistent object enhancements. Features include support for filtering; propagate FindObject, CommitChanges, Refresh and other methods from NonPersistentObjectSpace to AdditionalObjectSpaces (T509228); support CRUD operations with non-persistent objects in a nested ListView of a persistent object DetailView (T486427T510338T695631).

Incremental Enhancements to ASP.NET WebForms UI (v19.2)

Received 8.5% of the vote in our survey.

Continue making incremental enhancements to our ASP.NET WebForms UI. For instance, support reference properties in ASPxGridView's Batch Edit mode without custom code or user-friendly URLs. Please note that our primary focus will be on XAF’s SPA UI but we will do what we can to address the needs of those reliant on our ASP.NET WebForms UI.

Additional features

In addition to the housekeeping items listed above, we hope to introduce a number of new features in 2019 – features that were driven by feedback from our loyal user base.

Feature Group #1 (Asynchronous Operation Support and Better Progress Indication) is a clear winner among three feature groups (received 46.5% of the vote). We can leverage XPO’s async/await method support in IObjectSpace and other XAF APIs (T683644) - a new IObjectSpaceAsync interface may be coming. This will introduce the following benefits (primarily for WinForms):

  • Enhance perceived performance with the help of asynchronous Actions (open DetailView from ListView, save DetailView).
  • Visualize long-running background processes (such as time consuming calculations) in custom Actions with a progress bar and allow end-users to work with other parts of your application.
  • Visualize blocking UI operations with overlay forms and other loading indicators - all powered by the WinForms SplashScreenManager.
  • Notify end-users after successful execution (even for simple, but important operations like saving or deleting data).

Async/await method support will also help increase ASP.NET Core Data Service throughput under a high load in our new SPA UI for Web and Mobile. For more information on use-case scenarios, please refer to the following support tickets: T112329AS6060CQ59274Q352118We will preview the most popular features in v19.1 and release them in v19.2.

Though we believe this feature can really make a difference for end-users, it is difficult to implement and test. It is also quite error prone, as is anything related to multi-threading. It will also cause inevitable breaking changes to existing code. For instance, all UI-related logic must consider that current View data records and controls may not be immediately available or initialized. For more information, refer to the IsDelayedDetailViewDataLoadingEnabled and DelayedViewItemsInitialization option prerequisites.


Should time allow, we will add support for some of the features within group #2 (received 32% of the vote) and #3 (received 21.5% of the vote). This represents a logical evolution of the Office module released in 2018.

  • Property Editors for string or byte array properties that display PDF file content (T213126).
  • Property Editors for string or byte array properties that display Excel spreadsheet content (Q503665).
  • Property Editors for string or byte array properties that display RTF content on the Web (S31438).

We Welcome Your Feedback

Should you have any questions about this roadmap, our Native Mobile UI Controls, or the DevExpress Universal Subscription – feel free to email info@devexpress.com.

The information contained within this blog post details our current/projected development plans. Please note that this information is being shared for INFORMATIONAL PURPOSES ONLY and does not represent a binding commitment on the part of Developer Express Inc. This roadmap and the features/products listed within it are subject to change. You should not rely on or use this information to help make a purchase decision about Developer Express Inc products.

no comments
No Comments

Please login or register to post comments.