发布时间 : 2021-09-24 10:50:09.133|阅读 84 次
概述:此示例显示如何在线程中呈现报告。
相关链接:
Stimulsoft Ultimate是用于创建报表和仪表板的通用工具集。该产品包括用于WinForms、ASP.NET、.NET Core、JavaScript、WPF、PHP、Java和其他环境的完整工具集。
Stimulsoft Reports不仅拥有强大的报表导出系统,而且还支持多种报表导出格式,拥有简单且强大的报表引擎。Stimulsoft Reports基本原则是,用简单常规的方法创建报表,将不同的技术应用于应用程序。Stimulsoft Reports .NET一个基于.NET框架的报表生成器,能够帮助你创建结构、功能丰富的报表。不仅界面友好,而且使用便捷,能够让你轻松创建所有报表。
点击下载Stimulsoft Reports .NET v2021.3.1最新版
此示例显示如何在线程中呈现报告。在线程中呈现报告是在后台进程中运行的。为此,使用BackgroundWorker该类:
private System.ComponentModel.BackgroundWorker backgroundWorker1; private void button1_Click(object sender, EventArgs e) { backgroundWorker1.RunWorkerAsync(); }在backgroundWorker1_DoWork()流程事件开始时,您可以下载报告并连接数据。您还应该订阅Rendering()已编译报告对象的事件:
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { using (var stream = Assembly.GetExecutingAssembly(). GetManifestResourceStream("RenderInThread.Master-Detail-Subdetail.mrt")) { report.Load(stream); } DataSet data = new DataSet(); data.ReadXmlSchema("..\\..\\Data\\demo.xsd"); data.ReadXml("..\\..\\Data\\demo.xml"); report.RegData(data); report.IsRendered = false; report.Compile(); report.CompiledReport.Rendering += new EventHandler(CompiledReport_Rendering); report.Render(false); }在CompiledReport_Rendering()事件更新表单上的文本 - 显示StatusString属性的值。线程工作完成后,在查看器中显示报告:
void CompiledReport_Rendering(object sender, EventArgs e) { button1.Invoke((EventHandler)delegate { button1.Text = report.StatusString; }); } private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { report.Show(); }在下面的屏幕截图中,您可以看到示例代码的结果:
Aspose、E-iceblue、FastReport、Stimulsoft等文档/报表图表类开发工具享超低折扣,如有需要可直接联系在线客服。