2009-04-28 6 views
2

私たちは現在、WindowsFormsHostのアプリケーションでwinforms WebBrowserコントロールを使用していて、 'WebBrowser.ShowPrintDialog()'を呼び出して印刷しています。この問題は、ダイアログがモーダルではなく、親ウィンドウを閉じることができます印刷が後で試みられた場合に問題を引き起こす。私は誰かのオンラインの話を見つけた私は同じようなことに自分自身をやったときに、彼らは、この問題を修正しますことを期待して新しいWPFのWebBrowserコントロールを見ていたが、それから印刷する方法を見つけることができません。...net 3.5 SP1で利用可能なwpf Webブラウザからの印刷方法を教えてください。

これを行う:

 PrintDialog printDialog = new PrintDialog(); 
     printDialog.PrintDocument(((IDocumentPaginatorSource)webBrowser.Document).DocumentPaginator, "My App"); 

しかしWebBrowser.DocumentがIDocumentPaginatorSourceインターフェイスをサポートしていないので、これは例外をスローします。

wpf Webブラウザコントロールから印刷する方法はありますか?

おかげ

答えて

4

は、私はこれを使用していて、それが動作します:勤務

mshtml.IHTMLDocument2 doc = webBrowser.Document as mshtml.IHTMLDocument2; 
    doc.execCommand("Print", true, null); 
+0

おかげで、。残念ながら、まだ印刷ダイアログが表示されているにもかかわらず、印刷を開始するUIとやりとりすることができます(そして解消することができます)。この問題はありますか?印刷ダイアログが閉じられたときにイベントを取得する方法に関するアイデアはありますか? – Trev

+0

私は分かりませんが、印刷ダイアログは管理されていないコードから開始されているので、そのようなイベントをリスンするにはもう少し作業が必要になるかもしれません。 – Botz3000

+0

私はあなたの両方を嫌い、どこにステートメントを使用して、どのようにWebブラウザをインスタンス化していますか? –

関連する問題