ReportViewer部分使用總結


  最近winform上使用ReportViewer做報表,因為之前沒弄過,所以遇到了很多問題,現在總結一下。

  一、運行環境

   .net環境:4.0

   開發工具:vs2010

二、開發步驟

 第一步,在winform窗體上添加ReportViewer控件作為呈現報表的容器,重新命名為reportViewerTest;

 第二步,利用向導添加MyTestReport.rdlc報表文件;

 第三步,利用向導添加數據集Test.xsd,數據集用來存放報表需要呈現的數據源的格式,在數據集中添加一個用來測試的Student表;

                                                                                         

 第四步,設計MyTestReport報表文件,這里方便測試,只添加一個列表來顯示student信息。在添加列表的時候需要綁定在上一步添加的student表,報表綁定的數據源信息可以在【報表數據】里查看。【報表數據】可在【視圖】中打開。

             

                                                               

   第五步,在winform頁面中為reportViewerTest的屬性中指定該報表,或者動態為reportViewerTest指定報表文件,如

               reportViewerTest.LocalReport.ReportEmbeddedResource="報表文件";// 包含命名空間和報表文件名稱  如 Test.ReportManage.MyTestReport.rdlc

                動態創建一個datatable,表結構和數據源文件中的student表相同,如

                 DataTable studentDt=new DataTable("Student");

              studentDt.Columns.Add("ID");
              studentDt.Columns.Add("Name");
              studentDt.Columns.Add("Age");
              studentDt.Columns.Add("Sex");

               為studentDt賦值:

               studentDt.Rows.Add("10001", "Jack", 12, "男");
               studentDt.Rows.Add("10002", "Lucy", 11, "女");
               studentDt.Rows.Add("10003", "Jason", 15, "男");
               studentDt.Rows.Add("10004", "Lili", 13, "女");

              將數據表加入報表:

                   reportViewerTest.LocalReport.DataSources.Add(new ReportDataSource("Student",studentDt));//注:這里數據源名稱要與上面再報表中定義的數據源名稱一致。

      第六步,刷新報表控件。

                     reportViewerTest.RefreshReport();

 

 

     最后,如果報表中有跳轉鏈接,既報表間跳轉,需要實現報表控件的Drillthrough事件,報表的相關初始化工作在該事件的方法中實現。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM