XAF Blazor & WinForms UI — .NET 8, Built-in Security and Multi-Tenancy Support, Integration of Custom Components, UI Customizations (v23.2)

XAF Team Blog
19 January 2024

As you probably know, our WinForms products ship with a custom Outlook-inspired app. You can review this app using the DevExpress Demo Center v23.2 (under the WinForms category), if you download and run our Unified Component Installer (Trial/Paid). The app features many of our WinForms control, including but not limited to reports, charts, pivot grids, maps, rich text editors, data grids with master-detail and layout views, etc.

Until recently, we have not offered a showcase demo of a similar complexity for XAF, our Cross-Platform .NET App UI framework.

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.

XAF's Outlook-inspired Demo App

For our v23.2 release, we replicated our WinForms Outlook-inspired demo app using XAF's WinForms UI (view it on GitHub). We also added a Blazor counterpart to the XAF WinForms demo (replicating the same screens using our Blazor and JavaScript (DevExtreme) UI components). If you read my recent post (XAF (Blazor UI) 2023 Highlights — 5 Unique Web Features Designed to Rival Windows Desktop Solutions), you'll note that XAF Blazor and its underlying components are production-ready and can deliver many of the same capabilities as XAF WinForms for typical line-of-business apps.

In addition to replicating functionality found in its WinForms only counterpart, XAF's new Outlook-inspired demo includes the following unique features/capabilities:

1. Built-in Multi-Tenancy support for complex enterprise-level usage scenarios (XAF's Multi-Tenancy module was first introduced in our v23.2 release cycle).

2. Built-in security features, including but not limited to role-based access control (RBAC) with flexible authentication strategies including type, record, and field-level permissions (learn more). A quick aside: We wanted to use our Middle Tier application server (powered by EF Core) for the WinForms portion of the demo, but decided to skip it for the sake of simplicity. Such enterprise-level features are critical in modern desktop apps, so we will likely incorporate Middle Tier Security in this demo for v24.1.

3. Comprehensive set of runtime UI customization options (for developers and end-users alike): XAF (both Blazor and WinForms UI) allows you to address changes to business requirements without redeployment. Want to rearrange grid columns/detail form editors, or create/remove layout groups/tabs directly in your web browser? Customizations such as these are straightforward for XAF-powered apps (learn more). 

Multi-Tenancy Module for Blazor and WinForms

Custom UI Components: XAF's Inherent Extensibility

The myth that XAF is "inflexible" is just that - a myth. Thanks to thousands of XAF customers who have delivered thousands of production apps of varying complexity over the last 15 years, we know that XAF is more than capable of addressing complex enterprise usage scenarios (for proof, check out customer case-studies, XAF landing page for newcomers, hundreds of user reviews on G2, Visual Studio marketplace, DevExpress.com itself; thousands of Support Center tickets, or even from living legends dominating their home markets with XAF-based apps like https://www.prakom.net/. Our new XAF demo is another example that shatters this myth.

To help XAF newcomers learn common UI customization techniques faster, we also published a detailed readme on how to accomplish the following:

  • Create custom Property and List Editors, or other View Item types/templates (documentation).
  • Build custom Razor components from scratch or integrate standard and third-party Blazor and JavaScript components;
  • Organize your solution structure/folders for Blazor and WinForms at the same time and share/reuse code between platforms.
Initially, we also wanted to describe how to write unit, functional (e2e) and integration tests for both UI platforms and run them on Azure (critical for many enterprise-level teams/apps). This would have increased the length of the readme by more than 10 pages, so we skipped this for now. We may still describe this topic in detail later, should user demand exist - please let us know in the DevExpress Support Center. In the meantime, explore our tests in this demo folder at your convenience.

This GitHub repro illustrates (through code examples) how to implement certain features, which may be temporarily missing in our Blazor Components or XAF Blazor UI itself. For instance, want fancy maps, grid card views or tricky chart integrations, which may not make it into a standard delivery due to limited use by all XAF customers? Simple - follow our lead, just copy or learn from code by example.

Modified ShowInDocumentAction Icon

Watermarked Report

Your Feedback Matters!

As always, you are more than welcome to share your feedback about XAF's Multi-Tenancy module, Blazor/WinForms UI, EF Core, Middle Tier Security, Web API Service, and more via the DevExpress Support Center or the survey below.

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.