2009-07-20 6 views
1

現在、WPFから文書を印刷しようとしています。私は、ドキュメントを表示するために必要なautodeskプラグインを持っているアクティブなxコントロールを含んでいるので、Webブラウザを使用しています。WPFからdwf/dwfxファイルを印刷する

私は、WPFがWebブラウザを直接サポートしていないことを認識していますが、これについてはWindowsフォームライブラリを統合したばかりです。コードを実行して印刷することもできましたが、印刷されるドキュメントは空白です。

WindowsフォームライブラリとWPFの間で競合が発生する可能性があるかどうかはわかりません。私はドキュメントにナビゲートしていて、一度エラーがスローされて読み込まれたら印刷します。ここで

は、私が使用しているコードです:

private void btnPrint_Click(object sender, RoutedEventArgs e) 
    { 
     System.Windows.Forms.WebBrowser w = new System.Windows.Forms.WebBrowser(); 

     Uri uri = new Uri("C:\\BOS-BD-4518-000.dwg.dwf"); 
     w.Navigate(uri); 

     w.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(w_DocumentCompleted); 
    } 

    void w_DocumentCompleted(object sender, System.Windows.Forms.WebBrowserDocumentCompletedEventArgs e) 
    { 
     System.Windows.Forms.WebBrowser w = (System.Windows.Forms.WebBrowser)sender; 

     w.Print(); 
    } 

一つの可能​​なヒッチは、誰もが初期化されるように制御を強制する方法を知っているん、アクティブXコントロールをロードすることが許可されていないことが考えられます。

事前に誰もが(.dwf)ドキュメントこの問題を解決する方法についてのアイデアやオートデスクを印刷する別の方法を持っています

おかげで、 SumGuy

+2

.NET 3.5 SP1から事前カプセル化されたWPF WebBrowserコントロールを使用してみましたか? http://blogs.msdn.com/llobo/archive/2008/06/12/wpf-webbrowser.aspx Internet Explorerから直接印刷してみましたか? – IanGilham

+0

私の知る限り、WPF WebBrowserには印刷するオプションがありません。これを行う方法があるかもしれません(それは理にかなっていますが)私はそれを見つけることができませんでした。 私はInternet Explorerから直接ドキュメントを印刷していますが、動作しますが、アクティブなxコントロールについてのメッセージが表示され、ロードする前に許可する必要がありました。 – SumGuy

答えて

1

そうでもない種類の答えが、溶液の場合誰もが.dwfファイルを印刷したいと考えています。新しいフォーム.dwfxを使用しないでください。これはオートデスクの新しいファイルタイプであり、実際にはXPSの一種であり、非常に簡単です。あなたはXPSビューアに非常に簡単に読み込むことができるので、ActiveXを使わずにWebブラウザに読み込むことができます(より良い方法です)。

私は最終的に恐ろしいファイルを印刷するために使用されるコードは以下の通りです:

private PrintQueue printQueue; 

PrintDialog pDialog = new PrintDialog(); 
pDialog.PageRangeSelection = PageRangeSelection.AllPages; 
pDialog.UserPageRangeEnabled = true; 

if (pDialog.ShowDialog() == true) 
    PrintSystemJobInfo xpsPrintJob = printQueue.AddJob(v.FileName, v.FilePath, false); 

その方法は簡単です? XPSを使用してそれを行う他の多くの方法があります。基本的にはdwfxファイルをXPSドキュメントとして使用することができます

関連する問題