FastReport.NET 动态创建报表FastReport.Report实例绑定List<T>数据源
作者:C/S框架网|www.csframewo  发布日期:2023/03/01 14:25:18
  FastReport.NET 动态创建报表FastReport.Report实例绑定List数据源


FastReport.NET 版本: 程序集 FastReport, Version=2021.3.8.0


参考代码


C# Code:

/// <summary>
/// 创建报表对象
/// </summary>
/// <param name="listDataSource">数据源</param>
/// <returns>返回报表实例</returns>
private FastReport.Report CreateReport(List<_Demo_Customer> listDataSource)
{
  
string rptFileName = "rpt_Demo_Customer.frx";
  
string rptTitle = "2345234234";
  
  
//报表模板文件路径
  
string reportTemplateFile = Path.Combine(Application.StartupPath, @"Reports\" + rptFileName);
  
  
//实例报表对象,加载报表模板文件
  
FastReport.Report report = new FastReport.Report();
  report.Load(reportTemplateFile);
  
  
//注册数据源
  
report.RegisterData(listDataSource, "M");
  
  
//给DataBand数据列表绑定数据源
  
DataBand dataBand = report.FindObject("Data1") as DataBand;
  DataSourceBase dataSource
= report.GetDataSource("M");
  dataSource.Enabled
= true;//必须设置为true
  
dataBand.DataSource = dataSource;
  
  
//设置报表参数
  
report.Parameters.FindByName("pReportTitle").Value = rptTitle;
  report.Parameters.FindByName(
"pPrintUser").Value = Loginer.CurrentUser.AccountName;
  report.Parameters.FindByName(
"pPrintTime").Value = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
  
  
return report;
}

//来源:C/S框架网 | www.csframework.com | QQ:23404761



注意事项

1. 数据绑定数据源对象类型(DataBand.DataSource):FastReport.Data.BusinessObjectDataSource
2. dataSource.Enabled = true;//必须设置为true,数据源才有效!


打印预览


C# Code:

public void Preview(Form owner, List<_Demo_Customer> data)
{
  FastReport.Report report
= CreateReport(data);
  report.Show(
true, owner);
}

//来源:C/S框架网 | www.csframework.com | QQ:23404761





C/S框架网|原创精神.创造价值.打造精品


扫一扫加作者微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务
上一篇 下一篇