XAF - Usability and Performance Enhancements, Breaking Changes, Noteworthy Support Center Tickets and Tricks

XAF Team Blog
03 July 2019

Usability & Performance Enhancements

  • To save time with functional XAF testing, check our Notepad++ and Visual Studio Code extensions for EasyTest files (*.etc, *.inc): syntax highlighting, collapsible regions, code snippets and more. In our opinion, functional and unit tests are a must for teams creating complex apps. We would appreciate your feedback here or in comments to this KB article.
  • With XAF v19.1.4, we no longer check the TargetObjectsCriteria value for disabled or inactive actions. An Action criterion is evaluated only when the Action is activated and becomes visible. For more information, please see this ticket
  • Did you know that CodeRush's Code Cleanup feature can automatically replace hardcoded property names in XPO/XAF business objects with nameof? For more information, see this ticket.
  • XAF v19.1.4 demos include fixes for high DPI displays: navigation panel and lookup/popup window widths are modified more effectively (T744239) and certain Web images are no longer blurred (T734471). If you’ve experienced other 4K/SVG related issues, please submit your comment below.
  • We moved deprecated Item Templates (XAF v19.1.5) into a section at the bottom - this will preclude them from accidental selection. Recommended templates are placed at the top and are sorted by popularity. For more information, see this ticket
  • With XAF v19.2, we no longer display the save confirmation dialog when a user closes DetailView for a new unmodified object in a WinForms application. For more information, see this breaking change
  • With XAF v19.2, the IObjectSpace.ObjectChanged event is no longer raised for control value changes (because of performance issues). For more information, see this breaking change.
  • With XAF v19.1.5, we load all objects required by RecordsNavigationController (current, next and previous objects) in one query when DetailView is opened through ListViewProcessCurrentObjectController. Currently, ASPxGridListEditor, WinForms GridListEditor, SchedulerListEditor and TreeListEditor call this API when an object is double-clicked or ENTER is pressed. This should be a bit faster on slow connections. For more information on usage scenarios, feel free to review the following tickets: XAF Database Performance | Optimize data requests in the RecordsNavigationController
  • With v19.2, we replaced the IModelLayoutGroupWeb.IsCollapsibleCardGroup and IModelLayoutGroupWeb.IsCardGroupCollapsed properties with the new platform-agnostic options: IModelLayoutGroup.IsCollapsibleGroup and IModelLayoutGroup.IsGroupCollapsed. This is required to implement a popular user request - collapsible layout groups for WinForms (v19.2). For more information, see this breaking change and this ticket.

Noteworthy Support Center Tickets

  • T741546: Don’t miss the Visual Studio 2019 version 16.1 or newer update where DevExpress project templates are categorized as expected.
  • A2670: We keep recommending that our users try Native Image Generator (NGEN) to dramatically cut app and form load times. 
  • K18167: We described how to use STASafeDataStore in an XAF app to resolve the "Entering the 'GetObjectsNonReenterant' state..." error caused by a known .NET Framework specificity
  • T741228: We clarified the assembly versions loaded in a complex XAF solution (with projects for both .NET Framework and .NET Standard).
  • T742517; We demonstrated how to load multiple file attachments using a custom ViewItem based on the ASPxUploadControl (XAF Web app).
  • KA18699: We updated a popular KB article regarding ways to define calculated properties.
  • T741894: We demonstrated how to use the CustomizeTypesInfo method in a multi-threaded scenario (Web app).
  • T749921 | T741871: We discussed usability, printing and performance of the new rich text editors in XAF WinForms and WebForms apps.
  • E4908: We started a series of posts on how to use the XAF security system functions in non-XAF .NET apps using XPO for data access. This example contains a security system feature overview and the first Console demo.

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.
No Comments

Please login or register to post comments.