天天看点

vs2008 怎么教你一步一步做RDLC报表

第一步,建立一个asp的winfrom项目:

建立一个窗体。命名:Frmlist,

然后在工具箱去找到一个选项卡叫 Crystal Reports的,将里面的控件MicrosoftReportViewer拖入窗体Frmlist里面。因为他将会成为接下来做的报表的载体。报表不能直接显示,而是通过这个窗体Frmlist显示。

然后添加一个报表。就跟添加一个新窗体一样。自己去前面找。

将新报表命名为ctlTableDemo.rdlc

具体要打印什么,就在里面操作,他右边一样有工具箱。

如果打印表单,那就更简单了。直接连接数据库。因为报表一样要绑定数据库的,你直接绑定后,就可以直接拖拽到对于的表单位置了。

而在窗体FrmList里面的加载事件如下

 private void Frmlist_Load(object sender, EventArgs e)

        {

            this.reportViewer1.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local;

            this.reportViewer1.LocalReport.ReportPath = "ctlTableDemo.rdlc";

            //

            reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("ctlsDemo_vSales", LoadData()));

            //

            this.reportViewer1.RefreshReport();

        }

        private DataTable LoadData()

        {

            DataSet dataSet = new DataSet();

            dataSet.ReadXml(@"data\ctlsDemo.xml");

            return dataSet.Tables[0];

        }

在LoadData()方法里面,你也可以写你绑定的表里面查询一下你要的集合。对应放到dataSet里面,最后返回到上面去。如果是多张表。在 

reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("ctlsDemo_vSales", LoadData()));

这里,可以写多个绑定。比如

 private void Frmlist_Load(object sender, EventArgs e)

        {

            this.reportViewer1.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local;

            this.reportViewer1.LocalReport.ReportPath = "ctlTableDemo.rdlc";

            //

            reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("ctlsDemo_vSales", LoadData()));

 reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("ctlsDemo_vSales", LoadData1()));

            //

            this.reportViewer1.RefreshReport();

        }

        private DataTable LoadData()

        {

            DataSet dataSet = new DataSet();

            dataSet.ReadXml(@"data\ctlsDemo.xml");

            return dataSet.Tables[0];

        }

private DataTable LoadData1()

        {

            DataSet dataSet = new DataSet();

            dataSet.ReadXml(@"data\ctlsDemo.xml");

            return dataSet.Tables[0];

        }

这样,你就可以基本上做出报表来了,但是报表里面对应了很多函数,自己慢慢去试试吧,挺简单的。参考部分IIF或者时间格式等函数http://qingyanxiyu.iteye.com/admin/blogs/1094538

下一篇: 拆解数字

继续阅读