原創|其它|編輯:郝浩|2012-07-11 04:47:27.000|閱讀 722 次
概述:本文介紹了在DevExpress XtraReports控件中創建主從報表的兩種方法。第一種方法是基于Detail Report Band之上的,適用于當數據源在主實例和從實例間包含一個ADO.NET關系的情況。第二種方法是創建兩個不同的報表類,將從報表作為一個子報表并入主報表中。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
如果一份報表是用來顯示分層數據源的數據,則它通常被稱為主從報表。本文介紹了在DevExpress XtraReports控件中創建主從報表的兩種方法。第一種方法是基于Detail Report Band之上的,適用于當數據源在主實例和從實例間包含一個ADO.NET關系的情況。第二種方法是創建兩個不同的報表類,將從報表作為一個子報表并入主報表中。
使用Detail Report Band創建主從報表
另外所有的通用Report Bands,DevExpress XtraReports采用DetailReportBand類型。這種帶狀區域專門為主報表中的一個從報表設計,如果報表數據源實現在對象綁定到主報表和對象綁定到從報表之間的主從ADO.NET關系中就可以使用。
這種方法比使用子報表更先進,因為它允許你在同一類文件中存儲主報表和從報表。此外,由于aDetailReportBand和其他所有帶狀區域一樣存在于主報表同一集合的帶狀區域中,它允許你在相同的報表設計器的顯示從報表帶狀區域。
這里可以嵌套無限個從報表帶狀區域,如下圖所示。
注意:你可以在同一級嵌套多個從報表。
在設計時添加DetailReportBand,只需用鼠標右鍵單擊該報表并從下拉菜單中選擇“Insert Detail Report”即可。如果數據源綁定到報表的ADO.NET關系已存在,在子菜單中就會有一個該關系名稱的選項。
提示:你還可以添加未綁定的從報表,并指定其主要性能。
綁定從報表到一個報表數據源中的從報表中,為創建的DetailReportBand作如下屬性設置:
下面的圖片說明了這些在Visual Studio IDE的屬性。
注意:由于DevExpress XtraReports在數據關系中的不同數據項使用獨立的名稱,應避免使用數據成員的名稱。
將從報表作為子報表嵌入
如果數據源綁定到主報表沒有包含ADO.NET關系,或者你喜歡主報表和從報表在不同的文件中(例如,如果從報表在不同的主從報表中重用),可以使用子報表將從報表嵌入到主報表中。
在一般情況下,使用子報表幫助創建主從報表比使用DetailReportBands復雜。如果可以選擇,我們建議你使用DetailReportBands。
使用子報表創建主從報表需要如下操作:
使用XRSubreport控件創建主從報表不能在Visual Studio設計時預覽,因為它在創建過程中使用事件的處理。