Search This Blog

Wednesday, April 25, 2018

Update on WinForms SVG Images Support in v18.1

Please do not miss our recent update in the WinForms SVG Images Support - Preview in v18.1 KB article:

We've extended the number of scenarios where SVG images are now correctly shown in a WinForms XAF application with the following:
● SVG images used for SingleChoiceAction itself and its items shown in the bar and ribbon controls.

● SVG images used for SingleChoiceAction shown in the popup menu.

● SVG images used for ParametrizedAction shown in the bar and ribbon controls and in the popup menu.

● SVG images used for ParametrizedAction shown in ButtonsContainer on a detail view.

● SVG images used for nodes in TreeListEditor via the new DevExpress.Persistent.Base.General.ITreeNodeSvgImageProvider interface.

Your feedback is needed!
If you want to test this feature with your real world applications on a virtual machine (or another suitable test environment) prior to the official release, download the v18.1 preview build here: DevExpress XAF v18.1 Preview installer 

UPDATE on Customization Forms - XAF WinForms v18.1.3+

With v18.1.3 (RTM or Beta2), a tooltip will be shown for complex property paths to avoid confusion from fields with the same name. Refer to the attached video:

Note that since multiple customization forms can be opened at the same time, now the form's header also includes the View's caption. We hope your end-users will appreciate these minor usability improvements. Refer to the original Support Center ticket for more details.

See Also:
Customization Forms and Model Editor Improvements - XAF v17.2.6

The future of old RichTextPropertyEditor and HtmlPropertyEditor with the introduction of the new Office-inspired Word Processing Module - YOUR FEEDBACK IS NEEDED!!!

Why bothering?
As many of you already heard, we are shipping the Office module with the Rich Text Editor in v18.1. It allows end-users to create, load, change, print, save and convert documents in different formats, including HTML. At this stage, this new module is for WinForms only. We see ways to support more Office functionality and cover other platforms in the future.

As you know, there are two very old XAF Property Editors, which perform similar functions, but with lower quality. They are both based on standard Microsoft controls:
DevExpress.ExpressApp.HtmlPropertyEditor.Win.HtmlPropertyEditor - this is a part of HTML Property Editor Module that integrates the System.Windows.Forms.WebBrowser component. 
DevExpress.ExpressApp.Win.Editors.RichTextPropertyEditor - this is a part of the standard DevExpress.ExpressApp.Win module that integrates the System.Windows.Forms.RichTextBox component.

We created them almost 10 years ago when DevExpress did not provide controls with similar functions. Today, their usage is not justified also because of missing High DPI support, nice icons and useful functions like Mail Merge. Workarounds can be implemented for these standard controls too, but it does not make much sense to invest our resources into this when much better options are already available. These editors have not recently received updates in other areas anyway. This is still a maintenance work for our team that could have been spent on something else.

What we want to change and how?

Friday, April 20, 2018

XAF v18.1 - An application will not start if there are non-existent member or type info for the Application Model elements

Starting with v18.1, we have introduced checks for type and member info existence at the core level. If a type or member is not existent, the exception will be thrown by default:

NOTE: Type and member info is mandatory as ALL standard and third-party modules rely on it. We do NOT recommend disabling this check in production, because your application will still fail later (you may not notice it and it will happen on an end-user machine).

Typical but not all scenarios where you may see this error are:
- Code changes to an underlying object type structure. For instance, class renaming or removing, namespace or assembly changing; member renaming, removing or its underlying type changing (also applied to custom fields added at runtime).
- Invalid model differences for changed types and members are still present (e.g., for ListView columns and a DetailView layout, appearance and validation rules).

Please refer to this Support Center article for more details on possible solutions and ways to disable this behavior.

Monday, April 16, 2018

Capturing a user's signature in an XAF mobile application - UPDATE for v17.2.8+

Starting with v17.2.8, MobilePropertyEditor supports the Edit ViewEditMode. We updated our How to use a Signature Pad in XAF Mobile example and enabled SignatureAction in the Edit mode accordingly. This improvement saves end-users time not only for this particular scenario (they no longer require to switch views), but also when working with regular image properties. Dwyer

To see the difference in action, refer to the GIF file below and compare it with the one from my previous post:

Your feedback is needed!
For early testing, we published a daily build. You can download it using the following link: DevExpressNETComponents- We look forward to hearing from you.

Thursday, April 12, 2018

Updates to the new Rich Text Editor Module and ASPxGridLookup-based PropertyEditor in v18.1

Please do not miss the updates to the following KB articles from our team:
We have moved further and added Mail Merge support to the new module. To enable this feature, set the MailMergeDataType property in RichEditWindowsFormsModule in Application Designer. Now it's also possible to work with multiple rich text editors in the Ribbon mode. You can open the content of the selected rich text editor in a popup window using the 'Show in Popup' context menu item. Also now you can view rich text content in a list view's columns.
ASPxGridLookupPropertyEditors provides the capability for creating/modifying objects via a popup window. The add and edit buttons open the popup window to create a new object or to modify a selected one. ClearButton allows clearing the editor value. 

Your feedback counts!
If you are an active Universal subscriber and would like to test these new features prior to the official release, download the DevExpress XAF v18.1 Preview installer. By providing early build access, we hope to find out whether our new features and solutions address your requirements and issues. Your testing efforts and your feedback help us deliver the best possible final implementation.

Tuesday, April 3, 2018

Old entries in the XPObjectType table - YOUR FEEDBACK IS NEEDED!

I am reviewing the priority of a quite dated SC item on the subject and wanted to ask the community for help. The problem may occur when old business class libraries exist in the application folder. By default, XPO tries to load them by the XPObjectType info along with the new versions. This may lead to a conflict at runtime or startup performance degradation. In the latter case, assembly type resolution may come at a cost (see the point 3.5 under How to measure and improve the application's performance).

Why are we hesitating to remove old XPObjectType entries by default?
1. Removing old XPObjectType records affects other apps accessing this database and is serious. Outdated service table records may relate to business class records too (inheritance mapping is in use very often). So, deleting them will lead to foreign key constraint violation. Creating a sophisticated generic solution for this is not easy task.