Skip to main content

Ensure Safe Loading of Reports (WPF)

  • 2 minutes to read

This topic describes how to allow users to load only secure reports in WPF reporting applications.

When a user attempts to load a potentially unsafe report, End-User Report Designer for WPF displays the following warning:


A report is considered unsafe if it (or in any of its subreports) contains any of the following:


If you have not yet done so, be sure to review the following help topic: Reporting - Security Considerations.

The following code prevents users from being able to load unsafe reports:

public partial class MainWindow : System.Windows.Window {
    public MainWindow() {
        DevExpress.XtraReports.Configuration.Settings.Default.UserDesignerOptions.ReportLoadingRestrictionLevel =

The code above displays the error message when the user attempts to load a potentially unsafe report.


In a restricted environment, when all reports are guaranteed to be safe, you can disable this warning and allow end-users to load any report by setting the UserDesignerOptions.ReportLoadingRestrictionLevel property to RestrictionLevel.Enable.

The following code lets you determine whether a report is considered unsafe, and displays detected security warnings in the Output window:

var traceSource = DevExpress.XtraPrinting.Tracer.GetSource("DXperience.Reporting", 
    System.Diagnostics.SourceLevels.Error | System.Diagnostics.SourceLevels.Warning);
var listener = new System.Diagnostics.DefaultTraceListener();
try {
    new XtraReport1().ShowRibbonDesignerDialog();
} finally {