Stimulsoft Reports.Net示例演示:WinForms 类别中在线程中呈现报告

发布时间 : 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();
}
在下面的屏幕截图中,您可以看到示例代码的结果:

Stimulsoft Reports.Net示例演示:WinForms 类别中在线程中呈现报告


Aspose、E-iceblue、FastReport、Stimulsoft等文档/报表图表类开发工具享超低折扣,如有需要可直接联系在线客服


在线
客服
微信
QQ 电话
023-68661681
返回
顶部