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