您好,登錄后才能下訂單哦!
其他話我就不多說了,我就直入話題。
這是我第一次做winform報表,應該說是第一次做報表。哈哈.我用的是vs2008,報表工具是reportviewer和rdlc報表文件。 我開始的時候,當然想到第一個入手是,先做一個實例,我是從這里開始下載那個實例, http://wenku.baidu.com/view/97644817cc7931b765ce1526.html 就是利用下班時間來做一遍。 如果想動態綁定的數據的話,我是這樣做的。
DataSet ds = material_bll.Getmaterialbyid(filid);//獲取數據集的數據 this.reportViewer1.LocalReport.ReportEmbeddedResource = "WindowsFormCase.report1.rdlc";(備注:這個主要是關鍵,路徑不對它會顯示一個白板的) this.reportViewer1.LocalReport.DataSources.Clear(); this.reportViewer1.LocalReport.DataSources.Add(new Microsoft.Reporting.WinForms.ReportDataSource("MySelfDataSet_Get_MetarialByFillint_zhou(這個是數據集名稱)", ds.Tables[0])); this.reportViewer1.RefreshReport();
綁定多個數據集的話,就添加多一句,
this.reportViewer1.LocalReport.DataSources.Add("數據集名稱",獲取數據函數)
之后就,如果你看不懂我上面的話,你估計沒做過上面我提供給您的鏈接實例。所以,麻煩做一遍上面的實例。
最讓我頭疼的是,報表的布局問題,一般來說,顯示的報表,要以打印瀏覽為基準。也就是說,瀏覽的效果是什么樣子,打印出來就是什么樣子。可是,我調試的時候,那個rdlc總是顯示在reportviewer的左側,我修改了reportviewer的margin啊padding啊,都不得,我郁悶了差不多兩天了去,結果,我才發現,reportviewer有一個SetDisplayModel方法,它要在代碼才能實現,在reportviewer加載時候,加入這兩句,第二句是打印布局的時候以百分百顯示。
reportViewer1.SetDisplayMode(DisplayMode.PrintLayout);//修改報表成打印布局模式 reportViewer1.ZoomMode = ZoomMode.Percent;
這樣一來,顯示布局的時候,rdlc文件就會一直顯示在窗體的中間,就好像一張紙張一樣的了。注意一點就是,reportviewer要設置成停靠在窗口...最后就是如果超出紙張大小的話,它會跑到下一頁,布局會很丑陋。你要根據紙張大小,對rdlc里面的內容,不要太超出了。。設置寬高就可以了。 后面的不懂就,留言吧。我看到了會回復。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。