DOBON.NET DOBON.NETプログラミング掲示板過去ログ

PageSetupDialogのマージン

分類:[.NET]

プリントドキュメントにマージンの設定を行いたいのですが
ページセットアップダイアログを表示すると、値が変ってしまいます

Dim pd As New Printing.PrintDocument
Dim pds As New PageSetupDialog
pd.DefaultPageSettings.Margins = New Margins(100, 100, 100, 100)
pds.Document = pd
pds.ShowDialog()
Console.WriteLine(pd.DefaultPageSettings.Margins.Left)

上の例では、
ShowDialog 以前では、100(100/100=1インチ) がセットされていますが
ShowDialog すると、10mm の表示になってしまいます
そのまま、OKすると、こんどはインチ換算して、39に変ってしまいます

マージンの初期値を与えておいて、ユーザーが変更した場合は
それを保存しておき、次回の初期値にするような処理を行いたいのですが

上の方法は間違っているのでしょうか
■No671に返信(DEGさんの記事)
> プリントドキュメントにマージンの設定を行いたいのですが
> ページセットアップダイアログを表示すると、値が変ってしまいます

バグのようですね。

・.NET 247 : Newsgroup - PageSetupDialog and page margins
http://www.dotnet247.com/247reference/msgs/29/147837.aspx
管理人さん、
> バグのようですね。

バグならば、
とりあえずShowDoalogのまえに値を換算してやることにします
ありがとうございました
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板