2009-12-11 113 views
3

我在應用程序中使用Web瀏覽器控件來顯示報表。該報告僅僅是HTML文本,但相當寬泛。當我使用.ShowPrintPreviewDialog()預覽打印時,即使切換到橫向模式,我也會看到報告在右側被截斷。c#webbrowser控件打印

當前我只調用.ShowPrintPreviewDialog()方法,然後調用.ShowPrintDialog()方法實際打印報告。

我的問題是......如何讓報表在多個頁面上打印?在橫向模式下跨越X頁面的報告我完全沒問題,但我不確定設置了哪個標記或者如何設置控件以實際將報告分割爲多個頁面。

回答

2

爲什麼不讓webbrowser控件爲您處理打印。我已經成功完成了這一點,其中報告數據是在xml中,並將xslt轉換應用於html,並使用webbrowser控件顯示報告並讓用戶在打印報告時作出選擇。這是webbrowser wrapper上的CodeProject的鏈接。有一種方法可以執行打印(其中包括由控件本身渲染的打印預覽)。

希望這會有所幫助, 最好的問候, 湯姆。

+0

@ tommieb75:謝謝你的回覆!實際上,我讓瀏覽器爲我處理打印,我認爲這就是導致問題的原因。我不確定爲什麼,但不會在多個頁面上打印整個報告。它只是在某個點停下來。我只是在控件中使用本機打印方法。 – 2009-12-11 13:57:17

+0

@Scott Vercuski:哦......現在我明白了,我不知道現在你會怎麼做......但是看看這裏...... http://www.codeproject.com/KB/printing/custom_paper_sizes。 aspx,除此之外,我很難過..我想象會有一個選項通過p/invoke強制打印佈局在多個頁面上。我還沒有看到IE做這個...... :(對不起,如果我不能幫你進一步.. – t0mm13b 2009-12-11 14:27:00

+0

@ tommieb75:沒關係!我欣賞努力!我會深入到打印鏈接,看看我的地方。再次。 – 2009-12-11 15:42:48