C#winfrom 创建Rdlc报表

之前也没有接触rdlc报表,于是经过大量的百度,也走了很多弯路,写这篇博客,一是为了总结,二是希望新手能简单快速上手

简单来说rdlc报表分为四点:1.创建winfrom项目,在窗体上添加ReportViewer控件;2.在项目中添加报表文件,并设计报表样式;3.在项目中添加数据集,并添加数据集字段(数据源可以用从数据库中获取);4.在窗体中绑定数据,也就是代码问题。1到3点以下网址博客写的很详细,就不做过多描述。

  http://blog.csdn.net/hk_5788/article/details/49846905 

第四部代码如下:

 //构建数据datatable
       DataTable dt = new DataTable();
        public void table()
        {
            dt.Columns.Add("outPatientName", typeof(string));
            dt.Columns.Add("outPatientSex", typeof(string));
            dt.Columns.Add("outPatientAge", typeof(string));
            for (int i = 0; i < 10; i++)
            {
                DataRow dr = dt.NewRow();
                dr["outPatientName"] = i;
                dr["outPatientSex"] = "男";
                dr["outPatientAge"] = "12";
                dt.Rows.Add(dr);
            }               
           
        }

private void Form1_Load(object sender, EventArgs e)
 {
      try
      {
       table();
           //获取报表文件并付给reportViewer控件
       this.reportViewer1.LocalReport.ReportPath = @"../../testReport.rdlc"; 
       //指定数据集
       this.reportViewer1.LocalReport.DataSources.Clear();
           //test 是第三步数据集的名字
       this.reportViewer1.LocalReport.DataSources.Add(new Microsoft.Reporting.WinForms.ReportDataSource("test", dt));
       //显示报表
       this.reportViewer1.RefreshReport();
      }
   catch (Exception ex)
      {
       MessageBox.Show(ex.ToString());
      }
  }

客户端使用RDLC报表:

到这里就可以在窗体就行预览报表信息了。当然这是你开发的电脑,如果你想在客户端也能正常查看报表,还需要在bin文件中添加以下文件:


因为reportViewer控件是不包括在微软net文件中的,打开控件是需要这五个dll支持的,这些dll这么来的呢?
首先打开项目引用


选择Microsoft.ReportViewer.Common的属性,查询路径和版本   


复制全部路径,

根据路径就可以找到Microsoft.ReportViewer.Common.ll。当然项目引用中,只有两个dll文件,

其他dll路径可以根据上面路径分析,加dll名称(这是我电脑的路径),然后选择版本,就可以找到其他dll。
例如:


依照上面步骤,依次将dll添加到dll中,那么rdlc报表就完成了。
最后有一点小经验给大家分享一下,如果在你查看RDLC报表是发现,汉字变成小方块,这是因为报表文件字体原因,只要找到报表文件,选择控件,在属性中将字体改成微软雅黑或者黑体即可。

猜你喜欢

转载自blog.csdn.net/Mj_kk/article/details/75635321