The designer raises events when a report is saved or loaded, letting you intercept storage — save to your own location, log, or validate.

Subscribe to the designer events. Attach handlers once, and optionally hide the built-in Save As… item:
static Form1()
{
    StiDesigner.SavingReport  += OnSaving;
    StiDesigner.LoadingReport += OnLoading;

    // Optionally hide the "Save As..." menu item
    StiMainMenuService.GetService().ShowFileReportSaveAs = false;
}

private static void OnSaving(object sender, StiSavingObjectEventArgs e)
{
    var designer = sender as StiDesigner;
    // string xml = designer.Report.SaveToString();
    MessageBox.Show("Report saved");
}

How it works. By handling the events you take control of persistence, so reports can be routed to a database or service instead of the file system.

By using this website, you agree to the use of cookies for analytics and personalized content. Cookies store useful information on your computer to help us improve efficiency and usability. For more information, please read the privacy policy and cookie policy.