DevExpress報表的資料繫結及列印

來源:互聯網
上載者:User

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; }    }}




相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.