没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:张莹心|2021-09-23 13:56:58.340|阅读 116 次
概述:此示例显示如何从代码打印数据网格。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
相关链接:
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_Load()事件中创建并填充数据集合:
private void Form1_Load(object sender, System.EventArgs e) { DataTable table = new DataTable("Demo"); table.Columns.Add(); table.Columns.Add(); DataRow row1 = table.NewRow(); DataRow row2 = table.NewRow(); DataRow row3 = table.NewRow(); row1.ItemArray = new string[2]{"1", "One"}; row2.ItemArray = new string[2]{"2", "Two"}; row3.ItemArray = new string[2]{"3", "Three"}; table.Rows.Add(row1); table.Rows.Add(row2); table.Rows.Add(row3); dataView1.Table = table; }让我们分PrintDataGrid()部分更详细地看一下该方法。首先,在字典中新建一个报表和数据源:
private void PrintDataGrid(DataGrid sender) { DataView dataView = (DataView)sender.DataSource; StiReport report = new StiReport(); report.ScriptLanguage = StiReportLanguageType.CSharp; // Add data to datastore report.RegData("view", dataView); // Fill dictionary report.Dictionary.Synchronize(); ...接下来,在报告中添加一个 Data Band 和 Header Band:
... StiPage page = report.Pages.Items[0]; // Create HeaderBand StiHeaderBand headerBand = new StiHeaderBand(); headerBand.Height = 0.5f; headerBand.Name = "HeaderBand"; page.Components.Add(headerBand); // Create DataBand StiDataBand dataBand = new StiDataBand(); dataBand.DataSourceName = "view" + dataView.Table.TableName; dataBand.Height = 0.5f; dataBand.Name = "DataBand"; page.Components.Add(dataBand); ...接下来,将参考数据源字段的文本框放置在数据带上,并在标题带上放置带有数据标题的文本框:
... // Create texts Double pos = 0; Double columnWidth = StiAlignValue.AlignToMinGrid(page.Width / dataView.Table.Columns.Count, 0.1, true); int nameIndex = 1; foreach (DataColumn column in dataView.Table.Columns) { // Create text on header StiText headerText = new StiText(new RectangleD(pos, 0, columnWidth, 0.5f)); headerText.Text.Value = column.Caption; headerText.HorAlignment = StiTextHorAlignment.Center; headerText.Name = "HeaderText" + nameIndex.ToString(); headerText.Brush = new StiSolidBrush(Color.LightGreen); headerText.Border.Side = StiBorderSides.All; headerBand.Components.Add(headerText); // Create text on Data Band StiText dataText = new StiText(new RectangleD(pos, 0, columnWidth, 0.5f)); dataText.Text.Value = "{view" + dataView.Table.TableName + "." + Stimulsoft.Report.CodeDom.StiCodeDomSerializator.ReplaceSymbols(column.ColumnName) + "}"; dataText.Name = "DataText" + nameIndex.ToString(); dataText.Border.Side = StiBorderSides.All; // Add highlight StiCondition condition = new StiCondition(); condition.BackColor = Color.CornflowerBlue; condition.TextColor = Color.Black; condition.Expression = "(Line & 1) == 1"; condition.Item = StiFilterItem.Expression; dataText.Conditions.Add(condition); dataBand.Components.Add(dataText); pos += columnWidth; nameIndex ++; } ...然后,将带有文本框的页脚带添加到报告中以显示总计值:
... // Create FooterBand StiFooterBand footerBand = new StiFooterBand(); footerBand.Height = 0.5f; footerBand.Name = "FooterBand"; page.Components.Add(footerBand); // Create text on footer StiText footerText = new StiText(new RectangleD(0, 0, page.Width, 0.5f)); footerText.Text.Value = "Count - {Count()}"; footerText.HorAlignment = StiTextHorAlignment.Right; footerText.Name = "FooterText"; footerText.Brush = new StiSolidBrush(Color.LightGreen); footerBand.Components.Add(footerText); ...最后,渲染报告并在查看器中显示:
... // Render without progress bar report.Render(false); report.Show(); }在下面的屏幕截图中,您可以看到示例代码的结果:
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@wqylolg.cn
本文将为大家介绍DevExpress XAF如何将.NET Aspire集成到Blazor项目中,欢迎下载最新版组件体验!
JxBrowser是 TeamDev 开发的跨平台库,用于在 Java 应用程序中集成 Chromium 浏览器。它支持 HTML5、CSS3、JavaScript 等,具备硬件加速渲染、双向 Java 与 JavaScript 连接、丰富的事件监听等功能,能处理网页保存、打印等操作,助力 Java 应用高效展示和交互网页内容。
FastReport 不仅仅包含报表组件,它还提供更多功能!特别是,它有几个组件可以像其他 Delphi 组件一样在您的应用程序中使用,而且我们一直在向库中添加更多组件。在本文中,我们将介绍其中之一:TfrShellTreeView。
RFID 标签是一种现代化的产品识别方式,正在迅速取代条形码。RFID 标签的独特之处在于它使用无线电信号。这让您可以快速扫描大量物品,节省大量时间。RFID 标签也用于识别公司内部的员工。在本文中,我们将探讨 RFID 标签如何与FastReport VCL中新增的 TfrxDeviceCommand 对象配合使用。
一个基于.NET框架的报表生成器,能够帮助你创建结构、功能丰富的报表。报表设计器界面友好,使用便捷,让你轻松创建所有报表。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@wqylolg.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢