ReportView報表的使用

今天剛接觸報表,花了很久時間,走了不少彎路,感受應該寫出來和你們分享下,前車可鑑。web

首先建立項目,添加新建項目—數據—數據集,在工具箱中拖入DataTable控件,右擊控件添加列,設置列名工具

 

添加新建項目—Reporting—報表,獲得.relc結尾的文件,在右側報表數據裏,右擊數據集—添加數據集spa

右擊—插入表(默認爲2行3列的表),修更名的hander爲編號、姓名、年齡,在第二列點擊選擇相對應的數據集裏的數據3d

*須要注意將Report1.rdlc文件的生成操做屬性改成內容code

接下來新建一個類,寫入代碼server

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

接着新建web窗體,在窗體裏寫入三個控件:ReportView、button控件和ScriptManager(沒什麼用,但沒有這個控件,會報錯)對象

<div>
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<rsweb:ReportViewer ID="ReportViewer1" runat="server" Height="386px" Width="619px"></rsweb:ReportViewer>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="肯定" />
</div>

以後給button控件的點擊時間寫入代碼:blog

 1 protected void Button1_Click(object sender, EventArgs e)
 2 {
 3 /*先清空原來數據集*/
 4 ReportViewer1.LocalReport.DataSources.Clear();
 5 /*設置報表文件*/
 6 ReportViewer1.LocalReport.ReportPath = @"D:\task\Exercise1\Learn\Report1.rdlc";
 7 /*數據集的填充*/
 8 ReportDataSource rds = new ReportDataSource("DataSet1", loadData());
 9 /*將數據集添加到本地報表*/
10 ReportViewer1.LocalReport.DataSources.Add(rds);
11 /*刷新報表顯示*/
12 ReportViewer1.LocalReport.Refresh();
13 }

注意第6行的地址必定不能寫錯,不然會報錯ip

最後寫入l對象包含的數據loadDataci

1 private List<Person> loadData()
2 {
3      List<Person> per = new List<Person>();
4      for (int i = 0; i < 5; i++)
5      {
6          per.Add(new Person() { ID = i + 1, Name = "name", Age = i + 18 });
7      }
8      return per;
9 }

啓動程序,完成!

相關文章
相關標籤/搜索