記得2010年之前,公司的項目基本上都要用到報表摔刁,以前我們常用的方法就是針對客戶的需求來定制化開發(fā)(基本上是死寫代碼)來實現(xiàn)尿贫,經(jīng)常導(dǎo)致項目經(jīng)常性的延期,因為客戶的需求經(jīng)常會變化蒙揣,隨著用戶的使用認(rèn)知度的提高,對報表的要求越來越高开瞭,導(dǎo)致程序員不停的修改代碼來實現(xiàn)懒震,效率不高、結(jié)束遙遙無期嗤详。个扰。。非常的痛苦葱色;當(dāng)然市面上有很多報表開發(fā)工具可以實現(xiàn)递宅,但是針對小公司來說采購一套這樣的系統(tǒng)的成本也非常的高,所以我們決定自己來開發(fā)一套像目前的潤乾苍狰、FineReport 這樣的報表設(shè)計器办龄,來實現(xiàn)快速的報表設(shè)計制作。
?? 當(dāng)初為了開發(fā)這樣的系統(tǒng)淋昭,花費的了很長的時間學(xué)習(xí)查閱各種資料俐填,其痛苦只有程序員才能體會,因為沒有任何現(xiàn)成的實例代碼可供參考翔忽,只有看別人的思路來一步步的摸索英融,本文將我們當(dāng)初設(shè)計制作的報表設(shè)計器的功能分享出來,讓有需要的或想開發(fā)報表設(shè)計的朋友們提供一個參考呀打,盡量少走很動彎路矢赁,設(shè)計端可以直接使用,但是計算引擎和網(wǎng)頁的計算的源碼就不能分享出來了(請不要介意贬丛,因為涉及到公司的保密原因)
???記得當(dāng)初為了制作報表設(shè)計器撩银,在網(wǎng)上查找有沒有相關(guān)的實例資料,找了很久豺憔,也是沒有找到合適的额获,后來發(fā)現(xiàn) SourceGrid 可以實現(xiàn)單元格的合并拆分功能,所以決定修改實現(xiàn)winform端的報表設(shè)計恭应。下面我將制作的E_Report 報表控件抽取出來建立一個簡易的Winform的可運行的實例提供給大伙下載抄邀,希望能給你的開發(fā)提供一點幫助和借鑒;當(dāng)然你可以直接使用也可以昼榛,里面的設(shè)計功能基本全部能境肾。
?? 抽取出來的源碼包含:E_Report 報表設(shè)計自定義控件DLL源碼;? EReportDemo 建立的簡易Winform 端設(shè)計器使用DLL的實例源碼;
? 一、運行效果
??? 實例中奥喻,只做了一個簡單的效果偶宫,工具欄的按鈕在單元格右擊屬性中都有,只是放了幾個常用的在工具導(dǎo)航欄中(右擊單元格屬性可以看到設(shè)計導(dǎo)航)
??? 可以進(jìn)行單元格的合并环鲤、拆分纯趋、字體、顏色冷离、背景吵冒、邊框等的設(shè)置,朋友們可以自己編寫保存發(fā)布等功能西剥,實現(xiàn)報表的真實功能痹栖;
?? 例如單元格屬性(其他還有很多的屬性,自己下載源碼后運行起來就能看到了)
對表格的斜線瞭空、斜線文字有很好的支持结耀;可以設(shè)置表頭、表位匙铡、標(biāo)題等 實際效果圖如下
表報設(shè)計DLL控件的源碼實在太多,這里就不再一一貼出來了碍粥,下載完整的源碼自己調(diào)試運行查看鳖眼。
此報表設(shè)計器結(jié)合上次的WEB打印控件,就組成了完整的報表設(shè)計嚼摩。
?? 報表設(shè)計器實例完整源碼下載地址:www.sdpsoft.com==》下載中心==》報表設(shè)計器簡易源碼----自定義報表控件(源碼)以及在Winform中的使用源碼?
?? 歡迎廣大朋友一起交流钦讳。