彩票走势图

【Stimulsoft Reports Silverlight教程】在Designer中保存并加载报表

翻译|使用教程|编辑:王香|2018-12-07 10:19:32.000|阅读 175 次

概述:此示例显示如何将报表加载到设计器以及如何使用保存报表事件。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

下载Stimulsoft Reports PHP最新版本

此示例显示如何将报表加载到设计器以及如何使用保存报表事件。

private void btLoadReport_Click(object sender, System.Windows.RoutedEventArgs e)
{
    if (cbReports.SelectedItem != null)
    {
        System.Reflection.Assembly a = System.Reflection.Assembly.GetExecutingAssembly();
        var stream = a.GetManifestResourceStream(string.Format("DesignerSaveLoad.ReportFiles.{0}.mrt",
            ((ComboBoxItem)cbReports.SelectedItem).Content.ToString()));
 
        StiReport report = new StiReport();
        report.Load(stream);
        stream.Close();
        stream.Dispose();
        stream = null;
 
        report.CalculationMode = StiCalculationMode.Interpretation;
        report.RegBusinessObject("Data", "Data", new Data());
 
        designer.Report = report;
    }
}

您可以在应用程序初始化时将事件侦听器添加到StiOptions.Engine.GlobalEvents:

public MainPage()
{
    ...
 
    StiOptions.Engine.GlobalEvents.SavingReportInDesigner +=
        new Stimulsoft.Report.Design.StiSavingObjectEventHandler(GlobalEvents_SavingReportInDesigner);
}

指定报表保存时要执行的操作:

private void GlobalEvents_SavingReportInDesigner(object sender, Stimulsoft.Report.Design.StiSavingObjectEventArgs e)
{
    if (designer.Report == null) return;
    e.Processed = true;
    messageBox = new MessageBoxWindow();
    messageBox.Closed += delegate
    {
        if (messageBox.Result == MessageBoxResult.Yes)
        {
            SaveFileDialog saveDialog = new SaveFileDialog();
            saveDialog.Filter = "Report Files (*.mrt) | *.mrt";
            if (saveDialog.ShowDialog() == true)
            {
                var stream = saveDialog.OpenFile();
                StiXmlReportSLService saveService = new StiXmlReportSLService();
                saveService.Save(designer.Report, stream);
 
                stream.Flush();
                stream.Close();
                stream.Dispose();
                stream = null;
            }
        }
 
        messageBox = null;
    };
 
    messageBox.Show();
}

下面的屏幕截图中,您可以看到示例代码的结果。

Stimulsoft

购买Stimulsoft正版授权,请点击“”哟!

GrapeCity年末福利大放送

标签:报表报表控件SilverlightStimulsoft

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP