当前位置: 代码迷 >> 报表 >> DevExpress表格的数据绑定及打印
  详细解决方案

DevExpress表格的数据绑定及打印

热度:212   发布时间:2016-05-05 07:38:15.0
DevExpress报表的数据绑定及打印

Devexpress的报表功能十分强大!支持自动分页,可以导出为PDF,WORD,RTF等众多格式,支持打印预览!

声明:此项目使用前需安装devexpress控件。

近来项目需求,需要做出来一个班级的二维码打印。以下示例将展示devreport 如何实现类似于Datalist的数据绑定及样式布局。效果图如下:


新建 >DXperience v12.2 Report Class,命名为ImageReport.cs


将XRPicture和XRlabel拖放至工作区,并排列好!仅使用这些控件即可完成数据的绑定和批量显示,类似于repeater中的itemtemplete。

右键可以弹出带区的菜单,可以插入页眉页尾等。

接下来设置为多列显示,

1、右键点击detail区域,选择“属性”,根据下图进行设置



Mode:选择多列的显示模式,固定列数或者固定列宽(自动计算每行的列数)

Layout:横向排列还是竖向排列

点击右键,进入代码。

   public partial class ImageReprot : DevExpress.XtraReports.UI.XtraReport    {        public ImageReprot()        {            InitializeComponent();            BindData();        }        /// <summary>        /// 数据绑定        /// </summary>        private void BindData()        {            // 绑定名称            lbName.DataBindings.Add("Text", DataSource, "Name");            // 绑定描述            lbDescription.DataBindings.Add("Text", DataSource, "Description");            // 绑定图片(第一个参数为要绑定的属性名称)            this.xrPictureBox1.DataBindings.Add("ImageUrl", DataSource, "ImagePath");        }    }

2、设置显示打印页

新建webform页面 WebForm1.aspx

进入设计页面,在工具箱中拖放ReportToolbar和ReportViewer,并将ReportToolbar关联到ReportViewer上。此处需在设计界面,如果在源界面拖放,则不能完成控件的注册导致设计失败。


打开后台代码

using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;namespace DevReportTest{    public partial class WebForm1 : System.Web.UI.Page    {        protected void Page_Load(object sender, EventArgs e)        {            ImageReprot report=new ImageReprot();            ReportViewer1.Report = report;            report.DataSource = Movies.GetMovies(); // 为报表设置数据列表        }    }}

至此数据绑定完毕,已经达到了demo的目的。下面附上model源码。

using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Collections;namespace DevReportTest{    public class Movies    {        public static List<MovieModel> GetMovies()        {            List<MovieModel> models = new List<MovieModel>();            models.Add(new MovieModel            {                Id = 1,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 1,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 2,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 3,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 4,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 1,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 1,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 2,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 3,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 4,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            }); models.Add(new MovieModel            {                Id = 1,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 1,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 2,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 3,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            models.Add(new MovieModel            {                Id = 4,                Name = "审死官",                ImagePath = "/1.png",                Description = "《审死官》,是周星驰1992年的一部香港无厘头喜剧。主要讲述清朝时期官官相护,状师宋世杰为有冤情的寡妇杨秀珍翻案的故事。"            });            return models;        }    }    /// <summary>    /// Model    /// </summary>    public class MovieModel    {        public int Id { get; set; }        public string Name { get; set; }        public string Description { get; set; }        public string ImagePath { get; set; }    }}




  相关解决方案