发布时间 : 2021-09-23 14:05:53.747|阅读 95 次
概述:此示例构建具有自动内容更新的实时实时报告。
相关链接:
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最新版
此示例构建具有自动内容更新的实时实时报告。例如,使用带有一些文本的报表和带有两个系列的图表。在Form1()初始化方法中,找到必要的报表组件。报告从应用程序资源加载:
private StiText text = null; private StiChart chart = null; public Form1() { // // Required for Windows Form Designer support // InitializeComponent(); stiReport1.Render(); StiComponentsCollection comps = stiReport1.RenderedPages[0].GetComponents(); text = comps["Text1"] as StiText; chart = comps["Chart1"] as StiChart; }该timer1_Tick定时器事件改变所选择的报告组件(如角度)的属性,并重绘报告。首先,应用文本旋转:
private System.Windows.Forms.Timer timer1; private void timer1_Tick(object sender, System.EventArgs e) { if (text == null)return; // Rotate text float angle = text.TextOptions.Angle; angle -= 1f; if (angle < 0) angle = 359; text.TextOptions.Angle = angle; ...接下来,由于图表样本有两个系列,因此应对每个系列进行旋转:
... // Rotate series 1 angle = ((StiDoughnutSeries)chart.Series[0]).StartAngle; angle -= 1f; if (angle < 0) angle = 359; ((StiDoughnutSeries)chart.Series[0]).StartAngle = angle; // Rotate series 2 angle = ((StiDoughnutSeries)chart.Series[1]).StartAngle; angle += 1f; if (angle > 359) angle = 0; ((StiDoughnutSeries)chart.Series[1]).StartAngle = angle; ...最后,实时更新报告:
... RectangleD rect = stiPreviewControl1.GetComponentRect(text); stiPreviewControl1.InvalidatePageRect(rect.ToRectangle()); rect = stiPreviewControl1.GetComponentRect(chart); stiPreviewControl1.InvalidatePageRect(rect.ToRectangle()); //stiPreviewControl1.View.Invalidate(); }在下面的屏幕截图中,您可以看到示例代码的结果: