![rdlc動(dòng)態(tài)加載xml實(shí)現(xiàn)圖表寬度高度自適應(yīng)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/5/acec18a4-77a5-4310-8b2f-fb3eb2151e0b/acec18a4-77a5-4310-8b2f-fb3eb2151e0b1.gif)
![rdlc動(dòng)態(tài)加載xml實(shí)現(xiàn)圖表寬度高度自適應(yīng)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/5/acec18a4-77a5-4310-8b2f-fb3eb2151e0b/acec18a4-77a5-4310-8b2f-fb3eb2151e0b2.gif)
![rdlc動(dòng)態(tài)加載xml實(shí)現(xiàn)圖表寬度高度自適應(yīng)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/5/acec18a4-77a5-4310-8b2f-fb3eb2151e0b/acec18a4-77a5-4310-8b2f-fb3eb2151e0b3.gif)
![rdlc動(dòng)態(tài)加載xml實(shí)現(xiàn)圖表寬度高度自適應(yīng)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/5/acec18a4-77a5-4310-8b2f-fb3eb2151e0b/acec18a4-77a5-4310-8b2f-fb3eb2151e0b4.gif)
![rdlc動(dòng)態(tài)加載xml實(shí)現(xiàn)圖表寬度高度自適應(yīng)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/5/acec18a4-77a5-4310-8b2f-fb3eb2151e0b/acec18a4-77a5-4310-8b2f-fb3eb2151e0b5.gif)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Rdlc動(dòng)態(tài)加載xml實(shí)現(xiàn)圖表寬度(高度)自適應(yīng) Rdlc動(dòng)態(tài)加載xml實(shí)現(xiàn)圖表寬度(高度)自適應(yīng) 2011-07-2310:28 by mr.張, 442 visits, 收藏,編輯 微軟提供的Rdlc報(bào)表為我們提供的很大的便利,功能強(qiáng)大, 使用簡(jiǎn)單。但在使用過程中總是有那么點(diǎn)美中不足:圖表大小是固定的,不能根據(jù)內(nèi)容自適應(yīng)大小。這就造成了如下情況,看圖說話: 數(shù)據(jù)少時(shí)圖表比較稀疏 數(shù)據(jù)多時(shí)圖表很擠 這對(duì)于我們追求完美的程序員來說是不能接收的,堅(jiān)決 要改造 思路: Rdlc是基于xml的,我們可以通過動(dòng)態(tài)修改rdlc的xml數(shù) 據(jù),來更改rdlc定義的圖表大小。 寬度的計(jì)算:類別總數(shù)*序列數(shù)*
2、(條形單位寬度+類別間隔) 寬度計(jì)算根據(jù)圖表的類型不同計(jì)算公式也不同,上述公式只適合簡(jiǎn)單柱形圖簡(jiǎn)單條形圖,其它類型的圖表以后解決。 Rdlc報(bào)表xml解析: 這里我們只需要?jiǎng)討B(tài)改變圖表的寬度和高度,需要知 道如下幾個(gè)節(jié)點(diǎn): <ChartName=chart1>中間數(shù)據(jù)省略</Chart> xpath路徑為:Report/Body/Reportitems/Chart Chart的類型Type節(jié)點(diǎn):<Chart> <Type>Column</Type>&
3、;lt;/Chart>其中 Type為Column代表簡(jiǎn)單柱形圖,Type為Bar代表簡(jiǎn)單條形圖 Chart的寬度Width節(jié)點(diǎn):<Chart> <Width>23cm</Width></Chart> Chart的高度Height節(jié)點(diǎn):<Chart> <Height>11.5cm</Height></Chart> 部分代碼: publicclassRdlcRe
4、portHelper ( privateXmlDocument_rdlcDoc; privateXmlNode_root; privatestring_chartName; privatedouble_perWidth=0.15;厘米 privateXPathDocumentxpathdoc; privateXPathNavigatorxnv; privateXmlNamespaceManagerxnm; privatestring_chartType=newstringBar,Column; publicRdlcReportHelper(stringpath) /加載xml _rdlcDoc
5、=newXmlDocument(); _rdlcDoc.Load(path); _root=_rdlcDoc.LastChild; xnm=new XmlNamespaceManager(_rdlcDoc.NameTable); xnm.AddNamespace(rd, http:/ xnm.AddNamespace(default, http:/ /reportdefinition); xnm.PushScope(); xpathdoc=newXPathDocument(path); xnv=xpathdoc.CreateNavigator(); /<summary&g
6、t; /轉(zhuǎn)換xml/</summary> /<returns></returns> publicMemoryStreamAutoSizeReport() XmlNodeChartNode= _root.SelectSingleNode(/default:Body/default:ReportItems/default:ChartName=+_chartName+,xnm);/查找Chart節(jié)點(diǎn) XmlNodeChartTypeNode= ChartNode.SelectSingleNode(default:Ty
7、pe”,xnm);/查找圖表類型節(jié)點(diǎn) if(w!=0) ( if(ChartTypeNode.InnerText=Bar) ( XmlNodeheightNode= ChartNode.SelectSingleNode(default:Height”,xnm);/設(shè) 置高度 heightNode.InnerText=w+cm; elseif(ChartTypeNode.InnerText=Column) ( XmlNodewidthNode= ChartNode.SelectSingleNode(default:Width”,xnm);/設(shè)置 寬度 widthNode.InnerText=w+
8、cm; 如何使用: 使用設(shè)計(jì)器設(shè)計(jì)好報(bào)表,設(shè)置要自動(dòng)伸展的圖表名稱,類別字 段、序列字段、值字段和單位寬度。 RdlcReportHelperreporthelper=new RdlcReportHelper(Server.MapPath(ReportTest.rdlc);reporthelper.AutoChartName=chartl;/設(shè)置自動(dòng)伸展圖表名稱reporthelper.DataSource=dt;/設(shè)置綁數(shù)據(jù)源 reporthelper.TypeField=Year;/設(shè)置類別字段 reporthelper.SeriesField=TypeName;/設(shè)置序列字段reporthelper.ValueField=Money;/設(shè)置值字段 reporthelper.PerWidth=0.15;/第個(gè)條形的最小寬度默認(rèn) 0.15 this.ReportViewer1.LocalReport.LoadReportDefinition(reporthelper.AutoSizeReport(); /this.ReportViewer1.LocalReport.ReportPath=Server.MapPath(ReportTest.rdlc); this.ReportViewer1.LocalReport.Dat
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 商場(chǎng)泔水清運(yùn)專項(xiàng)服務(wù)合同
- 二零二五年度寶石匠人珠寶店珠寶行業(yè)法律咨詢合同
- 廚衛(wèi)改造工程合同樣本
- 旅游規(guī)劃與設(shè)計(jì)行業(yè)智能化旅游目的地打造方案
- 電子通訊網(wǎng)絡(luò)工程指南
- 職業(yè)病診斷與鑒定作業(yè)指導(dǎo)書
- 三農(nóng)產(chǎn)品流通體系國(guó)際化與走出去戰(zhàn)略作業(yè)指導(dǎo)書
- 三農(nóng)田灌溉管理方案
- 多應(yīng)用臨時(shí)借款合同常用
- 房產(chǎn)歸男方無債務(wù)離婚協(xié)議書
- 福建省泉州市晉江市2024-2025學(xué)年七年級(jí)上學(xué)期期末生物學(xué)試題(含答案)
- 醫(yī)美注射類知識(shí)培訓(xùn)課件
- 2025年春新人教版物理八年級(jí)下冊(cè)課件 第十章 浮力 第4節(jié) 跨學(xué)科實(shí)踐:制作微型密度計(jì)
- 2025年廣電網(wǎng)絡(luò)公司工作計(jì)劃(3篇)
- 貨運(yùn)車輛駕駛員服務(wù)標(biāo)準(zhǔn)化培訓(xùn)考核試卷
- 銀行行長(zhǎng)2024年個(gè)人年終總結(jié)
- 財(cái)務(wù)BP經(jīng)營(yíng)分析報(bào)告
- 三年級(jí)上冊(cè)體育課教案
- 2024高考物理二輪復(fù)習(xí)電學(xué)實(shí)驗(yàn)專項(xiàng)訓(xùn)練含解析
- 暴發(fā)性心肌炎的診斷與治療
- 高中英語:倒裝句專項(xiàng)練習(xí)(附答案)
評(píng)論
0/150
提交評(píng)論