2011-12-19 100 views
2

我試圖在Windows窗體WebBrowser控件中顯示PDF文件。我通過WebBrowser.Navigate()方法做到這一點。當我想要顯示一個PDF文件時這是工作,這對我來說是不夠的。我需要當用戶點擊一個按鈕時,WebBrowser會顯示另一個PDF文件。我必須做什麼?在WebBrowser控件(Windows窗體)中顯示多個PDF文件

回答

1

在你的地方,我會做tabControl和foreach tabControl,我會把一個webbroswer,其中將有一個PDF的Tab。

編輯:WebBroswer是不喜歡Internet Explorer。 Internet Explorer具有多個選項卡(就像Chrome等)的「功能」。 WebBroswer元素只是該選項卡的內容:)

編輯2:經過多年後,我會推薦使用PDF庫也。作爲一個原型用例,它可能會起作用,但在現實世界中,我們永遠不知道會有多少。最好的做法可能是:或者讓用戶在一個能勝任的軟件中打開選項,例如本地使用(DC)選項卡的Acrobat Reader,或者使用PDF庫。

+0

謝謝,但我想在同一個窗口中顯示另一個PDF。當用戶單擊按鈕我再次使用導航方法,但舊PDF仍顯示。 – mshirdel 2011-12-19 20:45:19

+0

這是一個壞主意。假設用戶想要顯示10個PDF文件,「WebBrowser」控件對內存而言很糟糕,並且您的應用程序將拍攝高達300mb的內存使用量。爲什麼不使用PDF庫? – Jeremy 2011-12-19 20:49:39

+0

你推薦什麼? – mshirdel 2011-12-19 20:53:34

3

避免使用WebBrowser控件來顯示pdf。嘗試使用諸如PDFSharp之類的.net可用的許多免費PDF庫之一。

這將允許您繪製pdf的Form和使用TabControl您可以創建選項卡以編程方式並將一個新的PDF查看器內的選項卡。

通過使用PDFSharp,您可以輕鬆製作2個不同的文件PDF查看器(並排或頂部和底部)。或者您可以使用Adobe Reader的ActiveX控件。

編輯:這是我的理解,PDFSharp可以直接呈現pdf的。這隻能通過將頁面導出到Jpeg/Png然後顯示圖像來完成。對不起,有任何困惑。

+0

感謝您的指導。我試圖使用PDFSharp。 – mshirdel 2011-12-20 06:09:34

0

我認爲你在這裏遇到了一個非常簡單的導航問題。我爲你制定了一個項目,看看它,我希望它能解決你的問題。 下載here

+0

您無法將該代碼粘貼到您的答案中? – Jeremy 2011-12-21 08:25:19

相關問題