1,報表設計:平常的rdlc報表,在設計時,要添加資料庫資料來源。這樣必須綁定資料庫。我這裡做到了報表與資料庫分離。在表單中自己給報表初始化,給報表賦值。2,報表設計:建立報表Report1.rdlc,添加資料來源,選擇對象,選擇Mode層的Person
3,設定報表的資料來源,設計報表的介面,拖入表格,然後把Person對象的欄位賦值到表裡邊。然後設定報表資料來源
菜單:報表/資料來源,
修改報告的資料來源的名稱為:myds
設定報表中表格的資料來源名稱:myds
4,載入報表,在表單設計器裡拖入ReportView
選擇剛才的報表,然後刪除介面自動加入的“*DataSource”
5,然後是自己寫的初始化報表的代碼:
代碼 List<Person> listPerson = new List<Person>();
Person per = new Person("123", 25);
listPerson.Add(per);
DataSet orderSet = new DataSet();
orderSet = DataSetHelper.ToDataSet<Person>(listPerson as IList<Person>);
this.reportViewer.LocalReport.DataSources.Clear();
//this.reportViewer.LocalReport.DataSources.Add(new Microsoft.Reporting.WinForms.ReportDataSource("myds", DataSetHelper.ToDataTable(listPerson as IList<Person>)));
this.reportViewer.LocalReport.DataSources.Add(new Microsoft.Reporting.WinForms.ReportDataSource("myds",listPerson.ToArray<Person>()));
this.reportViewer.RefreshReport();