这篇文章主要为大家详细介绍了c#利用reportviewer生成报表的相关代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文主要是利用微软自带的控件reportviewer进行报表设计的小例子,具体内容如下
涉及知识点:
reportviewer :位于microsoft.reporting.winforms命名空间, 主要用于报表的显示
report:报表,以rdlc结尾的文件,可视化设计报表模板。
报表数据:内置字段,参数,图像,数据集(本报表主要使用参数,和数据集)
reportparameter:使用名称和值实例化新的报表参数
reportdatasource:报表的数据源与datatable对象联系起来
效果图如下:
相关代码如下:
/// <summary>
/// 设置报表
/// </summary>
private void setreport()
{
//第一步:清除之前的数据
this.rptview.localreport.datasources.clear();
//第二步:指定报表路径
this.rptview.localreport.reportpath = "report2.rdlc";
//第三步:构造新的datatable
datatable dt = new datatable("datatable1");
dt.columns.add("name");
dt.columns.add("score");
dt.columns.add("id");
dt.rows.add(new object[] { "语文", 80, "y0001" });
dt.rows.add(new object[] { "数学", 75, "s0001" });
dt.rows.add(new object[] { "英文", 96, "e0001" });
//名称不能写错,和报表中的数据集名称一致
reportdatasource rdsitem = new reportdatasource("dataset1", dt);
//此处可以有多个数据源
this.rptview.localreport.datasources.add(rdsitem);
//第四步:构造参数
list<reportparameter> lstparameter = new list<reportparameter>() {
new reportparameter("title",this.txttitle.text),
new reportparameter("id",this.txtid.text),
new reportparameter("name",this.txtname.text),
new reportparameter("age",this.txtage.text),
new reportparameter("sex",this.txtsex.text),
new reportparameter("salary",this.txtsalary.text),
new reportparameter("depart",this.txtdepart.text)
};
this.rptview.localreport.setparameters(lstparameter);
this.rptview.zoommode = zoommode.percent;
this.rptview.zoompercent = 100;
//第五步:刷新报表
this.rptview.refreshreport();
}
以上就是c#如何利用reportviewer来生成报表的示例代码分享(图)的详细内容。