设置PrintPreviewDialog控件的初始状态
本文关键字:初始状态 控件 PrintPreviewDialog 设置 | 更新日期: 2023-09-27 18:28:50
我正在使用PrintPreviewDialog,希望从默认设置调整其初始显示。到目前为止,我已经这样做了:
PrintPreviewDialog dlg = new PrintPreviewDialog();
dlg.WindowState = FormWindowState.Maximized;
dlg.PrintPreviewControl.Zoom = 1.0;
这给了我想要的演示,但当对话框打开时,缩放控件选择了"自动"选项,而不是100%,因为缩放值为1.0。如何使用缩放控件将100%显示为当前选择的缩放设置,以免混淆用户?
顺便说一句,这是VS 2010.NET 4
也许设置AutoZoom = false
会有所帮助:
dlg.PrintPreviewControl.AutoZoom = false;
PrintPreviewControl
应该反映AutoZoom
和Zoom
的值,但它没有。它的设计很奇怪。然而,在搜索该控件后,我发现我们可以访问PrintPreviewDialog
的ToolStrip
。默认情况下,此对话框有2个子控件。第一个是通过属性PrintPreviewControl
暴露的PrintPreviewControl
,第二个是ToolStrip
。通过循环使用Items
,您可以找到确切的ToolStripSplitButton
(缩放按钮),通过循环使用该拆分按钮的DropDownItems
,我们可以找到准确的100%
toolstripdropdown项并调用PerformClick
进行检查。然而,默认情况下,我认为我们事先知道该项的索引,下面的代码会起作用:
ToolStripSplitButton zoomButton = ((ToolStrip)dlg.Controls[1]).Items[1] as ToolStripSplitButton;
zoomButton.DropDownItems[4].PerformClick();//Check the 100% item in the zoom list
dlg.PrintPreviewControl.Zoom=100/100f;
dlg.PrintPreviewControl.Zoom=2; // 200% Zoom