WinForms and WPF Reporting - End-User Designer Enhancements (v19.1)

14 May 2019

We implemented several enhancements for our End-User Designers in v19.1. This post summarizes the new functionality. All features described below are available in the WinForms End-User Designer. Several are also available in the designer for WPF, they are highlighted specifically.

External Drag&Drop Operations and Clipboard Support

Both the Visual Studio Report Designer and the WinForms End-User Report Designer now support external drag&drop operations and clipboard interaction:

  • You can paste an image file from the clipboard, or drop an image onto the design surface to create an XRPictureBox
  • You can select an XRPictureBox and copy its image to the clipboard, then paste it elsewhere
  • Dropping or pasting files of types .txt, .rtf, .docx and .html creates either an XRLabel or an XRRichText
  • Drop a report definition file onto the Report Designer to replace the layout of the current report

This video shows the operations in action:

External Drag&Drop

SVG Validation

If an SVG image is loaded that contains tags which are not yet supported by our parser, a message box with details is displayed:

SVG Validation Message Box

Similar messages are displayed in the Visual Studio debug output window if you use API methods to load images at runtime.

Summary Editor Form

This feature is also available in the WPF Report Designer.

You can now create a simple summary directly in the Summary Editor, without the need to open the Expression Editor.

Summary Editor Form

Weighted Average Summary Function

As you can tell from the image above, the summary function Weighted average is now available out of the box. We would like to add more built-in summary functions, so please let us know which functions you are missing:

Default Page Settings For New Reports

The XRDesignMdiController class now includes the property DefaultReportSettings with various nested items: ReportUnit, PaperKind, PageWidth, PageHeight, Landscape, RollPaper, Margins. The End-User Report Designer takes all these into account when a new report is created using the commands New Report and New Report via Wizard.

Default Page Settings For New Reports

Please feel free to leave a comment below if you need to specify any other default report settings.

Magnifier Button For Color Properties

All color property editors now include a magnifier button. Click this button to invoke the Magnifier Dialog where you can pick a color from any screen pixel. This is useful to quickly create a common style for several controls, or to pick the color of a template image pixel when viewing it side by side with the Report Designer.

Magnifier

New Tab For The Properties Window

This feature is also available in the WPF Report Designer.

Page Settings are now available on their own tab in the Properties window for a Report object, to make them easier to discover:

Page Settings Tab

We are interested in your feedback about discoverability in the Properties window. Do you think the current tab icons speak for themselves? Do you have ideas for improvements?

Expression Property Tooltips

This feature is also available in the WPF Report Designer.

Finally, another small change to make settings more discoverable: when a property has an expression assigned, this expression is displayed in a tooltip when the mouse hovers over the property editor. No need to open the Expression Editor anymore for simple cases!

Expression Property Tooltips

Please Let Us Hear Your Thoughts

Most of the changes described above were made on the basis of your feedback. Please let us know if you have any new ideas or comments on the new features.

Webinar

Please use the link below to register for our upcoming webinar on Dashboards, Reporting and Data Analytics, where all new features the the v19.1 release are demonstrated.

Register for the Dashboards, Reporting & Data Analytics v19.1 Webinar

James Lincoln

Nice enhancements

14 May, 2019
Mohr

Very useful enhancements!

Being able to set the default printer name for the report could also be useful in the report's page settings dialog.

14 May, 2019
Chuck Bass

The weighted average is great, this is the single biggest omission in your product from an analytical standpoint.  Every grid I create needs it, many charts and reports could use it.   The workaround code to support it is ugly and usually repetitive.  I like what you've done but wonder if a general solution like [data_col]*[weight_col]/sum([weight_col) would not be better because it would allow generic mathematical relations.  I suspect there are many technical issues to making this work since effectively but if there were a reasonable "langauge" to construct summaries like you do with the Expression Property Tool Tips it would be very useful.

14 May, 2019
Dmitry Tok (DevExpress Support)

Hi,

Thank you for the feedback.

@Mohr: Do you expect that the default page settings taken from a printer are assigned to a report once you select a printer name in that wizard screen?

@Chuck: This summary function is "native" and the calculation is performed by an internal report's data controller.

The other approach you mentioned is also supported and the expression syntax for native summaries is "sumSum([Field1] * [Field2]) / sumSum([Field2]".

In case you are a fan of expression bindings and aggregate functions, this would be ([].Sum([Field1] * [Field2])) / [].Sum([Field2]), but the syntax will be more complex if there are any conditions.

The goal was to simplify the overall summary creation process and make it fast. In essence, to save the users from a need to open the Expression Editor and input the function body manually: end-users can now define simple summaries in a few clicks in the new Summary Editor.

15 May, 2019

Please login or register to post comments.