承接基于.Net的系统研发,精通物流系统,特别是仓储物流管理,有意者请联系。

使用List数据集合,利用DevExpress.XtraReports开发Master-Detail报表

  以前使用的是ActiveReport开发报表,第一次使用DevExpress开发报表,如遇到不正确的地方随意拍砖。一般在开发报表的时候,特别是开发Master-Detail结构的报表的时候,我们多数时候会选择DataSet作为数据源,今天讲讲如何使用List或者数组作为数据集合:

1、创建业务对象

public class Person
    {
        public string Name { get; set; }
        public int Age { get; set; }
    }


public class Room
    {
        public string No { get; set; }
        public List<Person> Persons { get; set; }//或者是List,或者是Person[],不能是IList,否则设计器在设置字表绑定时无法解                                                                         //析出Person的结构,其他的没有试过,没时间在这上面纠缠
    }

 

2、创建一个测试项目,创建一个XtraReport,添加一个bindingSource,比如Name是bindingSource1,绑定的类型是Room

3、在Detail中添加控件xrLabel1,然后控件的Text属性绑定Room的属性No。

4、右击Detail,增加一个Deatil Report,然后设置Deatil Report的datasouce 为"bindingSource1",datamember为"Persons ",如果不这样设置将无法显示出数据。然后添加控件xrLabel2,xrLabel3,其Text绑定Person的属性Name 和Age即可。

5、报表的设计工作已经完成,然后就是通过按钮调用报表类,并将获取的IList<Room>数据集合传入到XtraReport类中,调用ShowPreview()就可以看到效果了。

 

项目代码:https://files.cnblogs.com/yiping06993010/ReportTest.rar

posted @ 2009-11-12 20:18  阿修罗一平  阅读(2824)  评论(0编辑  收藏  举报