C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

WebBrowserの印刷ページ設定


(過去ログ 104 を表示中)

[トピック内 1 記事 (1 - 1 表示)]  << 0 >>

■62010 / inTopicNo.1)  WebBrowserの印刷ページ設定
  
□投稿者/ ムーくん (1回)-(2011/09/15(Thu) 13:20:17)

分類:[VB.NET/VB2005 以降] 

使用言語:VB 2008
こんにちは。WebBrowserの印刷ページ設定で質問があります。
WebBrowserの内容を印刷する場合、余白やヘッダ・フッタ文字の設定はIEと共通のため、
レジストリの内容を書き換えることで対応できるという記事が、以下の過去スレにありました。

WebBrowserのPrint()メゾットについて
http://bbs.wankuma.com/index.cgi?mode=al2&namber=37769&KLOG=65

これを参考に、レジストリを書き換えてWebBrowserの印刷を行うと、せっていが反映されて印刷されることを確認しましたが、
上のスレッドでも指摘されています通り、VB側で書き換えたレジストリの内容は、印刷終了後には元に戻したいと思っています。

そこで、以下のように試してみたところ、印刷内容がレジストリ書き換え前の状態で印刷されてしまいます。

'レジストリ設定
'(コード省略)

'印刷ダイアログ表示
WebBrowser1.ShowPrintDialog()

'レジストリの内容を元に戻す
'(コード省略)

色々と調べてみると、どうも印刷が実行される前に、レジストリの内容を元に戻す処理が走ってしまうようです。
ちなみに、レジストリの内容を元に戻す処理をコメントアウトすると、VB側で設定した状態で印刷することができました。
とりあえず、レジストリの設定・および元に戻す処理自体は正しく処理されていることをregeditで確認しております。

おそらく印刷処理は並行処理されているので、WebBrowser1.ShowPrintDialog()のすぐ後にレジストリを元に戻す処理を入れては
いけないのだと思いますが、どこでIEのレジストリ内容を戻せばいいのか、タイミングが分からずに困っております。
(何か印刷が終了したというイベントが拾えるといいのですが。)
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -