How to cancel report rendering in WPF

SharpShooter Reports.WPF version 7.1 introduces the ability to cancel the rendering process.

A new method for ReportSource is called ReportSource.CancelPrepare() and a method for ReportViewer is called ReportViewer.CancelRendering()

This method cancels the report rendering in case the given ReportSource supports such ability.

Also, the ReportViewer.CanCancelRendering property is introduced. This property allows detecting whether the rendering cancellation is supported by the current ReportSource or not.

Please, note that unlike ReportViewer, the ReportSource supports synchronous rendering which cannot be cancelled by calling CancelPrepare method. With this, the RenderDocument method which is used for calling ReportViewer async rendering is named identically to the method used for calling ReportSource sync rendering.  In order not to get confused by this notation, we recommend using appropriate ReportViewer methods, rather than using the ReportSource methods directly.

Additionally, the developers should pay attention to the use of custom RenderSite. Unfortunately, it is impossible to cancel such rendering with the help of methods described above. In this case it is up to the developer to implement rendering cancellation mechanism in such custom RenderSite.

Add Feedback