XAF (Blazor UI) 2023 Highlights — 5 Unique Web Features Designed to Rival Windows Desktop Solutions

XAF Team Blog
28 December 2023

In this last post of 2023, I want to highlight a few Cross-Platform .NET App UI (XAF)-related features we added or improved in 2023. When new users view screenshots of these unique XAF Blazor features or try them live in our XAF Blazor demo, they often ask whether it is a WinForms app (or if they are familiar with XAF, they cannot believe how much XAF Blazor apps have progressed over the last couple of years). 

If you have not heard of XAF before, XAF is a .NET application framework that helps you build powerful Office-inspired line-of-business apps with DevExpress Blazor and WinForms UI components (using Entity Framework or XPO ORM). We often call XAF the "Fastest App UI Builder for EF Core ORM", because it allows you to progress from a C# entity class to powerful Web, Desktop, and Mobile UI forms in minutes using its integrated Solution Wizard and built-in modules such as Audit Trail, Validation, Reporting, Scheduler, or Security System.

Get Started with XAF today if you want to build Office-like line-of-business (LOB) apps powered by Blazor, WinForms, or WebForms much faster than using traditional approaches. Check out XAF's demos in your DevExpress installation or online at https://demos.devexpress.com/xaf/blazordemo/. You can learn more about XAF benefits here, and our Considerations for Newcomers will help you understand whether this application framework is right for your business.

Unique Feature #1: End-User/Runtime Layout Customization within Detail Forms

With this UI/UX option, XAF Blazor users can create and manage their own UI directly in the Web browser. UI customization (for both developers and users) can be a time saver - customizable Web apps can address changing business requirements without the need for redeployment. As you would expect, you can disable these advanced customization capabilities for specific users. Use the CustomizationEnabled property in the Model Editor or in code. 

This is a XAF-specific feature, which is unavailable in DevExpress Blazor UI components by default. This feature mirrors functionality found in the DevExpress WinForms Layout Control.


Unique Feature #2: End-User/Runtime Grid Customization in List Forms

XAF Blazor ships with a Context menu for grid headers and rows (just like its WinForms/WebForms counterparts). Column Chooser, Hide Column, Group by Column, Show Auto Filter Row, Filter Editor, or Reset View Settings commands are available within the menu. Grid rows ship with New, Clone, Delete, Export To, and other menu items. 

This is a XAF-specific feature, which is unavailable in DevExpress Blazor Components by default (you can implement this functionality using DxContextMenu). This feature mirrors functionality found in the DevExpress WinForms Grid Control.

Documentation  Breaking Change in v23.2

XAF ASP.NET Core Blazor Reset View Settings in List View, DevExpress

Unique Feature #3: Advanced Filter Builder to Shape Data within List and Detail Forms

XAF integrates a JavaScript-based Data Filtering UI (Filter Criteria Editor), first introduced in our Web Reporting and BI Dashboard products. This filter builder supports popular criteria language options based on reference, collection, and scalar/value type properties (such as strings, numbers, etc). Filter UI helps address advanced usage scenarios and augments our Blazor Grid's Auto Filter Row, Find Panel, or Column Header Filter options. XAF's Filter Builder also helps application administrators/developers configure field and record-level security permissions for user roles (as part of XAF's Security System and its account management UI). 

This is a XAF-specific feature, which is unavailable in DevExpress Blazor Components (you cannot implement this functionality on your own easily). This feature mirrors functionality found in the DevExpress WinForms Filter Control.


Unique Feature #4: Master-Detail Mode Splitter for List Forms

In XAF Blazor, end-users can use this splitter to resize side-by-side master and detail views much like the UI metaphor used in Microsoft Outlook (compact view). Splitter position is saved in the Application Model (end-user settings are stored in the database by default when the Security System is enabled).

This is a XAF-specific feature, which is unavailable in DevExpress Blazor UI components by default. This feature mirrors functionality found in the DevExpress WinForms Layout Control.


Unique Feature #5: Built-in OAuth2 Authentication Provider Support (Microsoft, Google, etc.)

XAF Blazor as well as its backend Web API Service support various OAuth2 authentication providers: Windows, Microsoft Entra ID (former Azure Active Directory), Google, GitHub, and others. The XAF Blazor login form automatically renders UI controls based on authentication settings you specified in the Solution Wizard (or in code manually). XAF Blazor also includes "Brute Force" attack protection designed to limit unauthorized login attempts.

This is a XAF-specific feature, which is unavailable in DevExpress Blazor Components by default.

Documentation  General Security Considerations

Extended Logon Window in an XAF ASP.NET Core Blazor Application, DevExpress

Expected Enhancements for 2024: Bringing XAF Blazor Closer to Windows Desktop Apps

In addition to expected enhancements in 2024 like complete Notifications Module or EF Core 8 support, batch/cell-editing within DxGridListEditor, accessibility (a11y) and performance enhancements, I wanted to share a few bonus features, which are already in the works.

Tabbed MDI Support

Tabbed MDI is a type of multiple document interface (MDI) found in most modern applications (for instance, your favorite Web browser or Microsoft Outlook Web). It is a robust interface that maximizes document screen real estate usage, especially when you have dozens of documents, email messages, etc.

Tabbed MDI is enabled in XAF WinForms apps by default, and  XAF Blazor will provide a similar user experience in v24.1 (hopefully with a EAP in v23.2).

Add New Fields into the Customization Form of the Grid and Layout Controls at Runtime

XAF WinForms apps include an Object Model dialog. With it, end-users can tick or untick data model fields (including sub-fields and collections), which are not yet displayed in the grid or layout control (as part of the Column Chooser or Customization Form).

Much like in Microsoft Office apps, this capability allows users to fully customize list and detail forms (based on the structure of your data model). Again, this is helpful when developers need to address changes to business requirements without redeployment. 

XAF Blazor will provide a similar experience in v24.1 (hopefully with a EAP in v23.2). 

Your Feedback Matters!

Please, review the description of new XAF-related features in What's New v23.2 and leave your feedback at the end of the section: Go to the survey now.

Dennis Garavsky
Principal Product Manager

Free DevExpress Products - Get Your Copy Today

The following free DevExpress product offers remain available. Should you have any questions about the free offers below, please submit a ticket via the DevExpress Support Center at your convenience. We'll be happy to follow-up.