0

私は PrintPreviewDialog を使用しており、その初期表示をデフォルトから微調整したいと考えています。これまでのところ、私はこれを行ってきました:

            PrintPreviewDialog dlg = new PrintPreviewDialog();
            dlg.WindowState = FormWindowState.Maximized;
            dlg.PrintPreviewControl.Zoom = 1.0;

...これにより、必要なプレゼンテーションが得られますが、ダイアログを開くと、ズームコントロールで「自動」が選択され、ズーム値 1.0 に対応する 100% ではありません。ユーザーを混乱させないように、ズーム コントロールで現在選択されているズーム設定を 100% にするにはどうすればよいですか?

ところで、これはVS 2010 .NET 4です

4

2 に答える 2

3

たぶん設定AutoZoom = falseが役立ちます:

dlg.PrintPreviewControl.AutoZoom = false;

はandのPrintPreviewControl値を反映する必要がありますが、そうではありません。それはそのデザインの奇妙なことです。しかし、このコントロールを検索した結果、 の にアクセスできることがわかりました。このダイアログには、既定で 2 つの子コントロールがあります。1 つ目はプロパティを介して公開されるで、2 つ目はです。をループすることで、正確な(ズーム ボタン) を見つけることができます。また、その分割ボタンの をループすることで、正確なtoolstripdropdownitem を見つけて、それを確認するために呼び出すことができます。ただし、デフォルトでは、アイテムのインデックスが事前にわかっていると思います。次のコードが機能します。AutoZoomZoomToolStripPrintPreviewDialogPrintPreviewControlPrintPreviewControlToolStripItemsToolStripSplitButtonDropDownItems100%PerformClick

ToolStripSplitButton zoomButton = ((ToolStrip)dlg.Controls[1]).Items[1] as ToolStripSplitButton;
zoomButton.DropDownItems[4].PerformClick();//Check the 100% item in the zoom list
于 2013-08-24T17:19:22.500 に答える