【WPF】WebBrowser に PDFファイル を表示する

C#, 開発

おはようございます。

今回は、WPFアプリでPDFを表示する方法のうち、
WebBrowser でサクッとファイルを表示するのを試してみました。

画面に上部メニューを追加し、そこから呼び出せるように修正します。
ヘルプやマニュアルなんかをアプリから表示する際にやったりしますよね。

プログラムは前回のものを流用します。

画面の追加

新規でPDFを表示するためのウィンドウを追加します。
画像を取り忘れてしまいましたが、ソリューション・エクスプローラーから
「追加」>「ウィンドウ」みたいな感じで出来るはずです。

スポンサーリンク

画面レイアウト

PdfView.xaml

単純に WebBrowser を配置してスタイルを弄っただけです。

コードビハインド

PdfView.xaml.cs

 

実行ディレクトリを取得して、PDFのパスを絶対パスで指定します。
また、ツールバーを表示したくなければ「#toolbar=1」を「#toolbar=0」に変更してください。

PDFファイルの追加

プロジェクト直下に「Pdf」フォルダ―を作成し、適当なPDFファイルを格納します。
ファイル名は「sample.pdf」としました。

出力設定
出力設定

また、ファイルのプロパティを開き、常に実行ディレクトリにコピーするようにプロパティを変更します。

画面の修正

グリッドのレイアウト調整

MainWindow.xaml(抜粋)

メニュー追加

MainWindow.xaml(抜粋)

スタイル定義の追加

StyleDic.xaml

プログラム修正

追加したメニューのクリックイベントの実装を追加します。

MainWindow.xaml.cs

 

起動してみる

起動後画面
起動後画面

 

 

 

 

 

 

 

 

 

上部にメニューが追加されました。

閉じるメニュー
閉じるメニュー

 

 

 

 

 

 

 

 

 

よくある閉じるメニュー。
他に何も思いつきませんでした。。

PDF表示メニュー
PDF表示メニュー

 

 

 

 

 

 

 

 

 

PDF表示用のメニューです。

PDF表示
PDF表示

サンプルPFD表示メニューをクリックしてPDFを表示した画面です。
無事に表示されました。

まとめ

以前、何かの記事でも触れましたが
Word で、「rand=(10,10)」みたいな文言を入力し、エンターを押すとランダムでサンプルドキュメントを作ることができます。

今回のPDFはその機能を使って作ったサンプルのドキュメントを、PDFとして保存したものとなります。

こういった便利なコマンドを知っていると、ちょっとした効率化ができますね。

WebBrowser はもちろん HTML も表示できるので他にも色々と応用することができそうですね。
そのうちまた何か別のこともやってみたいと思います。

ではでは。

 

スポンサーリンク


関連するコンテンツ