问题描述:FpSpread如何实现基于windows操作系统上的平板电脑报表数据的填报,并能灵活实现填报模板的设计工作。
问题解答:通过Spread WPF可以无缝导入Excel实现好的模板,并通过代码添加数据库的数据。
关键代码:
加载已经设计好的Excel模板。
- // 加载Excel模板
- gcSpreadSheet1.OpenExcel("出库单导出模板.xls");
复制代码
通过数据库导入数据到Spread。
- // 获取动态行区域
- CalcExternalRangeExpression dataarea = (this.gcSpreadSheet1.GetCustomName("数据区域").Expression as CalcExternalRangeExpression);
- if (dataarea != null)
- {
- DataTable dt2 = ds.Tables["详细信息"];
- // 循环添加数据行
- for (int i = 0; i < dt2.Rows.Count; i++)
- {
- // 设置单元格的值
- foreach (DataColumn col in dt2.Columns)
- {
- NameInfo info = this.gcSpreadSheet1.GetCustomName(col.ColumnName);
- if (info != null)
- {
- CalcExternalCellExpression cce = (info.Expression as CalcExternalCellExpression);
- gcSpreadSheet1.ActiveSheet.SetValue(dataarea.StartRow + i, cce.Column, dt2.Rows[i][col.ColumnName]);
- }
- }
- // 如果还有数据,就插入新行
- if (i<dt2.Rows.Count-1)
- {
- gcSpreadSheet1.Sheets[0].AddRows(dataarea.StartRow + i + 1, 1);
- gcSpreadSheet1.Sheets[0].CopyTo(dataarea.StartRow, -1, dataarea.StartRow + i + 1, -1, 1, -1, CopyToOption.Style | CopyToOption.Span | CopyToOption.Formula);
- }
- }
- }
复制代码
效果截图:
示例下载:
|