发布时间 : 2021-09-24 10:50:09.133|阅读 171 次
概述:此示例显示如何在线程中呈现报告。
相关链接:
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等文档/报表图表类开发工具享超低折扣,如有需要可直接联系在线客服。
渝ICP备12000582号-15/渝公网安备 50010702501010号