• <menu id="w2i4a"></menu>
  • logo FastReport.Net 教程2017(完結(jié))

    文檔首頁>>FastReport.Net 教程2017(完結(jié))>>如何在MVC中快速打印報表

    如何在MVC中快速打印報表


    【點擊下載FastReport .Net v2018.1最新版本】

    為了使網(wǎng)頁報表與網(wǎng)頁的風(fēng)格保持一致,許多web報表都禁用了WebReport工具欄。也因為這樣,用戶被剝奪了用于導(dǎo)出和打印報表的選項。但是,如果你仍希望讓用戶能從瀏覽器中打印報表,則可以創(chuàng)建一個特殊的打印按鈕。通過點擊它,用戶將收到一個打印對話框。

    現(xiàn)在我將向你展示如何在MVC Web項目中調(diào)用打印對話框。

    首先,在視圖中添加一個按鈕。我把它發(fā)布在Web應(yīng)用程序demo的主頁上。我們在解決方案資源管理器(Solution Explorer)中找到文件Index.cshtml:

    如何在MVC中快速打印報表

    將按鈕添加到所需的位置:

    @using (Html.BeginForm("Print", "Home"))
     {
     <input id="print" type="submit" value="Print" />
     }
    

    這里Print是控制器中處理句柄的名稱。Home是控制器的名稱。

    轉(zhuǎn)到Controllers folder. HomeController.cs文件:

    如何在MVC中快速打印報表

    將該方法添加到類代碼中:

    public void Print()
     {
     WebReport webReport = new WebReport();
     System.Data.DataSet dataSet = new System.Data.DataSet();
     dataSet.ReadXml("C://Program Files (x86)//FastReports//FastReport.Net//Demos//Reports//nwind.xml");
     webReport.Report.RegisterData(dataSet, "NorthWind");
     webReport.Report.Load("C://Program Files (x86)//FastReports//FastReport.Net//Demos//Reports//Simple List.frx");
     webReport.EmbedPictures = true;
     webReport.PrintHtml();
     }
    

    如你所見,我們添加了一個名為Print的方法。讓我們仔細看看代碼。

    在第一行中,我們創(chuàng)建了一個??WebReport對象的實例。然后,我們創(chuàng)建了一個DataSet來處理數(shù)據(jù)。DataSet可以使用xml數(shù)據(jù)庫。實際上在第三行我指定了這個數(shù)據(jù)庫的路徑。使用RegisterData方法,我們將數(shù)據(jù)源注冊到報表對象中。然后,將報表模板加載到報表對象中。它位于與數(shù)據(jù)庫相同的文件夾中。EmbedPictures屬性允許你在html報表文件中嵌入圖像。最后,最后一行開始在瀏覽器中打印報表。

    如果要將報表保存為PDF格式,則只需將最后一行替換為:

    webReport.PrintPdf();

    在這種情況下,您可以使用選項來格式化PDF文件。例如:

    webReport.PdfPrintOptimized = true;

    此選項為打印提供最佳圖像質(zhì)量。

    現(xiàn)在您需要在Web.config中添加處理句柄:

    如何在MVC中快速打印報表

    <handlers>
     <add name="FastReportHandler" path="FastReport.Export.axd" verb="*" type="FastReport.Web.Handlers.WebExport"/>
     </handlers>
    

    現(xiàn)在運行應(yīng)用程序。網(wǎng)頁上的按鈕如下所示:

    如何在MVC中快速打印報表

    點擊按鈕。我們得到一個帶有報表和打印對話框的頁面:

    如何在MVC中快速打印報表

    這里是PDF的保存:

    如何在MVC中快速打印報表

    通過這種方式,你可以使用自定義按鈕調(diào)用打印對話框,而不是從WebReport工具欄中調(diào)用。當你將報表控件嵌入到網(wǎng)頁設(shè)計中時,這會很有幫助。

    在上面的例子中,我們沒有添加網(wǎng)頁報表對象到網(wǎng)頁。報表在打印之前,在單獨的頁面內(nèi)建立。如果你不需要在網(wǎng)頁上顯示報表時,這也很有用。

    產(chǎn)品介紹 下載試用 | 優(yōu)惠活動 | 在線客服 | 聯(lián)系Elyn

     

    推薦閱讀

    FastReport 正版授權(quán) 年終促銷6.5折
    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();