WPF アプリケーションに PDF を埋め込んで表示しようとしています。これまでのところ、これらのソリューションを試しましたが、成功しませんでした:
ここ に示されているものと同様に、
WindowsFormsHost
ホスティングコントロールにPDF を表示します。問題は、私のアプリケーションがModern UIに似たスタイルを作成するように設定していることですが、それが a とうまく調和しない(コントロールが見えなくなる) ことです。AxAcroPdf
AllowsTransparency = True
WindowsFormsHost
PDF を
WebBrowser
コントロールに表示します。問題は同じです。を設定
AllowsTransparency = False
しますが、これによりアプリケーションの動作が遅くなります。私は WPF を意図的に使用して、ビジネス アプリケーションのルック アンド フィールをエンド ユーザーの利益になるように強化しているため、これは解決策にはなりません。で 2 番目のウィンドウを使用して
AllowsTransparency = False
を表示しWindowsFormsHost
、それをハックしてメイン ウィンドウの子コントロールのように見せます (ここで説明します) 。ただし、MVVM を使用しているため、コード ビハインド アプローチは好きではありません。WPF のネイティブ PDF コントロールを見つけます。ただし、商用のものは数個しか見つかりませんでした。現在、それはオプションではありません。
私が必要とするのは、次のことができることです:
- WPF アプリケーションで PDF またはその表現 (つまり、画像または別の形式への変換) を表示します。
- 私のスタイルを視覚的に損なわず、流動的に保ちます (
AllowsTransparency
維持する必要がありますTrue
)。 - MVVM の原則を尊重するアプローチを使用します (コード ビハインドがないことが望ましい)。
- 私のアプリケーションに無料で含めます (商用利用)。
私は手作りのソリューション、オープンソース ライブラリ、さらにはまったく異なるアプローチに対して完全にオープンです。