发布时间 : 2021-09-18 14:27:40.380|阅读 110 次
概述:此示例显示如何显示报表构建的自定义进度。
相关链接:
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最新版
此示例显示如何显示报表构建的自定义进度。显示进度条对于复杂的报告或具有大量数据的报告非常有用。您可以使用Rendering()报告对象的事件:
void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { DataSet data = new DataSet(); data.ReadXml("..\\..\\Data\\Demo.xml"); report.RegData(data); using (var stream = Assembly.GetExecutingAssembly(). GetManifestResourceStream("SampleProgress.Master-Detail-Subdetail.mrt")) { report.Load(stream); } report.Compile(); report.CompiledReport.Rendering += new EventHandler(CompiledReport_Rendering); report.Render(false); } void CompiledReport_Rendering(object sender, EventArgs e) { if (label1.InvokeRequired) label1.Invoke((EventHandler)delegate { label1.Text = report.StatusString; }); else label1.Text = report.StatusString; }
要构建报告,您可以使用该线程。该button1_Click()事件添加必要的处理程序并启动线程。渲染后,报表将显示在查看器中:
private void button1_Click(object sender, EventArgs e) { backgroundWorker1.DoWork += new DoWorkEventHandler(backgroundWorker1_DoWork); backgroundWorker1.RunWorkerCompleted += new RunWorkerCompletedEventHandler(backgroundWorker1_RunWorkerCompleted); backgroundWorker1.RunWorkerAsync(); label1.Text = ""; label1.Visible = true; progressBar1.Visible = true; while (backgroundWorker1.IsBusy) Application.DoEvents(); } void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { label1.Visible = false; progressBar1.Visible = false; report.Show(); }在下面的屏幕截图中,您可以看到示例代码的结果: