Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Common / AuthoringOM / Design / Dialogs / WorkflowPageSetupDialog.cs / 1305376 / WorkflowPageSetupDialog.cs
using System; using System.IO; using System.Drawing; using System.Resources; using System.Windows.Forms; using System.Drawing.Printing; using System.ComponentModel.Design; namespace System.Workflow.ComponentModel.Design { ////// Summary description for Form1. /// public sealed class WorkflowPageSetupDialog : System.Windows.Forms.Form { #region [....] Desiger Generated Members private System.ComponentModel.Container components = null; private System.Windows.Forms.TabControl tabs; private System.Windows.Forms.PictureBox landscapePicture; private System.Windows.Forms.PictureBox portraitPicture; private System.Windows.Forms.TabPage pageSettingsTab; private System.Windows.Forms.GroupBox marginsGroup; private NumericUpDown marginsBottomInput; private NumericUpDown marginsRightInput; private NumericUpDown marginsTopInput; private System.Windows.Forms.Label marginsTopLabel; private System.Windows.Forms.Label marginsLeftLabel; private System.Windows.Forms.Label marginsBottomLabel; private System.Windows.Forms.Label marginsRightLabel; private NumericUpDown marginsLeftInput; private System.Windows.Forms.GroupBox scalingGroup; private NumericUpDown adjustToScaleInput; private System.Windows.Forms.RadioButton adjustToRadioButton; private System.Windows.Forms.RadioButton fitToRadioButton; private NumericUpDown fitToPagesWideInput; private NumericUpDown fitToPagesTallInput; private System.Windows.Forms.Label fitToTallLabel; private System.Windows.Forms.Label fitToWideLabel; private System.Windows.Forms.GroupBox orientationGroup; private System.Windows.Forms.RadioButton portraitRadioButton; private System.Windows.Forms.RadioButton landscapeRadioButton; private System.Windows.Forms.GroupBox paperSettingsGroup; private System.Windows.Forms.ComboBox paperSizeComboBox; private System.Windows.Forms.Label paperSizeLabel; private System.Windows.Forms.Label paperSourceLabel; private System.Windows.Forms.ComboBox paperSourceComboBox; private System.Windows.Forms.TabPage headerFooterTab; private System.Windows.Forms.GroupBox footerGroup; private System.Windows.Forms.GroupBox headerGroup; private System.Windows.Forms.ComboBox headerAlignmentComboBox; private System.Windows.Forms.Label headerAlignmentLabel; private System.Windows.Forms.ComboBox headerTextComboBox; private System.Windows.Forms.Label headerTextLabel; private System.Windows.Forms.Label headerMarginLabel; private System.Windows.Forms.Button OKButton; private System.Windows.Forms.Button cancelButton; private System.Windows.Forms.Button printerButton; private NumericUpDown headerMarginInput; private NumericUpDown footerMarginInput; private System.Windows.Forms.ComboBox footerAlignmentComboBox; private System.Windows.Forms.Label footerAlignmentLabel; private System.Windows.Forms.ComboBox footerTextComboBox; private System.Windows.Forms.Label footerTextLabel; private System.Windows.Forms.Label footerMarginLabel; private System.Windows.Forms.Label scalingOfSizeLabel; private System.Windows.Forms.Label footerMarginUnitsLabel; private System.Windows.Forms.Label headerMarginUnitsLabel; private System.Windows.Forms.TextBox customHeaderText; private System.Windows.Forms.Label customHeaderLabel; private System.Windows.Forms.Label customFooterLabel; private System.Windows.Forms.TextBox customFooterText; private System.Windows.Forms.GroupBox centerGroup; private System.Windows.Forms.CheckBox CenterHorizontallyCheckBox; private System.Windows.Forms.CheckBox CenterVerticallyCheckBox; #endregion #region Members and Constructor/Destructor private IServiceProvider serviceProvider; private WorkflowPrintDocument printDocument = null; private string headerFooterNone = null; private string headerFooterCustom = null; private string[] headerFooterTemplates = null; private bool headerCustom = false; private TableLayoutPanel okCancelTableLayoutPanel; private TableLayoutPanel paperTableLayoutPanel; private TableLayoutPanel centerTableLayoutPanel; private TableLayoutPanel marginsTableLayoutPanel; private TableLayoutPanel orientationTableLayoutPanel; private TableLayoutPanel scalingTableLayoutPanel; private TableLayoutPanel headerTableLayoutPanel; private TableLayoutPanel footerTableLayoutPanel; private bool footerCustom = false; public WorkflowPageSetupDialog(IServiceProvider serviceProvider) { if (serviceProvider == null) throw new ArgumentNullException("serviceProvider"); this.serviceProvider = serviceProvider; WorkflowView workflowView = this.serviceProvider.GetService(typeof(WorkflowView)) as WorkflowView; if (workflowView == null) throw new InvalidOperationException(SR.GetString(SR.General_MissingService, typeof(WorkflowView).FullName)); if (!(workflowView.PrintDocument is WorkflowPrintDocument)) throw new InvalidOperationException(DR.GetString(DR.WorkflowPrintDocumentNotFound, typeof(WorkflowPrintDocument).Name)); try { Cursor.Current = Cursors.WaitCursor; InitializeComponent(); this.printDocument = workflowView.PrintDocument as WorkflowPrintDocument; //deserialize state of the dialog from the page setup data scaling: //set the values scaling controls this.adjustToScaleInput.Value = this.printDocument.PageSetupData.ScaleFactor; this.fitToPagesWideInput.Value = this.printDocument.PageSetupData.PagesWide; this.fitToPagesTallInput.Value = this.printDocument.PageSetupData.PagesTall; //select the right mode if (this.printDocument.PageSetupData.AdjustToScaleFactor) this.adjustToRadioButton.Checked = true; else this.fitToRadioButton.Checked = true; //set the orientation if (this.printDocument.PageSetupData.Landscape) this.landscapeRadioButton.Checked = true; else this.portraitRadioButton.Checked = true; //margins SetMarginsToUI(this.printDocument.PageSetupData.Margins); //centering this.CenterHorizontallyCheckBox.Checked = this.printDocument.PageSetupData.CenterHorizontally; this.CenterVerticallyCheckBox.Checked = this.printDocument.PageSetupData.CenterVertically; //Initialize the paper InitializePaperInformation(); //read standard header/footer formats this.headerFooterNone = DR.GetString(DR.HeaderFooterStringNone);//"(none)" this.headerFooterCustom = DR.GetString(DR.HeaderFooterStringCustom);//"(none)" this.headerFooterTemplates = new string[] { DR.GetString(DR.HeaderFooterFormat1),//"Page %Page%",// DR.GetString(DR.HeaderFooterFormat2),//"Page %Page% of %Pages%",// DR.GetString(DR.HeaderFooterFormat3),//"%Path%%File, Page %Page% of %Pages%", // DR.GetString(DR.HeaderFooterFormat4),//"%Path%%File, Page %Page%",// DR.GetString(DR.HeaderFooterFormat5),//"%File, %Date% %Time%, Page %Page%",// DR.GetString(DR.HeaderFooterFormat6),//"%File, Page %Page% of %Pages%",// DR.GetString(DR.HeaderFooterFormat7),//"%File, Page %Page%",// DR.GetString(DR.HeaderFooterFormat8),//"Prepated by %User% %Date%",// DR.GetString(DR.HeaderFooterFormat9),//"%User%, Page %Page%, %Date%"// }; //header inputs this.headerTextComboBox.Items.Add(this.headerFooterNone); this.headerTextComboBox.Items.AddRange(this.headerFooterTemplates); this.headerTextComboBox.Items.Add(this.headerFooterCustom); this.headerTextComboBox.SelectedIndex = 0; string userHeader = this.printDocument.PageSetupData.HeaderTemplate; this.headerCustom = this.printDocument.PageSetupData.HeaderCustom; if (userHeader.Length == 0) { this.headerTextComboBox.SelectedIndex = 0;//none } else { int userHeaderIndex = this.headerTextComboBox.Items.IndexOf(userHeader); if (-1 == userHeaderIndex || this.headerCustom) { //this is an unknown template, put it into custom field this.headerTextComboBox.SelectedIndex = this.headerTextComboBox.Items.IndexOf(this.headerFooterCustom); this.customHeaderText.Text = userHeader; } else { this.headerTextComboBox.SelectedIndex = userHeaderIndex; } } this.headerAlignmentComboBox.Items.AddRange(new object[] { HorizontalAlignment.Left, HorizontalAlignment.Center, HorizontalAlignment.Right }); if (this.headerAlignmentComboBox.Items.IndexOf(this.printDocument.PageSetupData.HeaderAlignment) != -1) this.headerAlignmentComboBox.SelectedItem = this.printDocument.PageSetupData.HeaderAlignment; else this.headerAlignmentComboBox.SelectedItem = HorizontalAlignment.Center; this.headerMarginInput.Value = PrinterUnitToUIUnit(this.printDocument.PageSetupData.HeaderMargin); //footer inputs this.footerTextComboBox.Items.Add(this.headerFooterNone); this.footerTextComboBox.SelectedIndex = 0; this.footerTextComboBox.Items.AddRange(this.headerFooterTemplates); this.footerTextComboBox.Items.Add(this.headerFooterCustom); string userFooter = this.printDocument.PageSetupData.FooterTemplate; this.footerCustom = this.printDocument.PageSetupData.FooterCustom; if (userFooter.Length == 0) { this.footerTextComboBox.SelectedIndex = 0;//none } else { int userFooterIndex = this.footerTextComboBox.Items.IndexOf(userFooter); if (-1 == userFooterIndex || this.footerCustom) { //this is an unknown template, put it into custom field this.footerTextComboBox.SelectedIndex = this.footerTextComboBox.Items.IndexOf(this.headerFooterCustom); this.customFooterText.Text = userFooter; } else { this.footerTextComboBox.SelectedIndex = userFooterIndex; } } this.footerAlignmentComboBox.Items.AddRange(new object[] { HorizontalAlignment.Left, HorizontalAlignment.Center, HorizontalAlignment.Right }); if (this.footerAlignmentComboBox.Items.IndexOf(this.printDocument.PageSetupData.FooterAlignment) != -1) this.footerAlignmentComboBox.SelectedItem = this.printDocument.PageSetupData.FooterAlignment; else this.footerAlignmentComboBox.SelectedItem = HorizontalAlignment.Center; this.footerMarginInput.Value = PrinterUnitToUIUnit(this.printDocument.PageSetupData.FooterMargin); } finally { Cursor.Current = Cursors.Default; } } protected override void Dispose(bool disposing) { if (disposing) { if (components != null) components.Dispose(); } base.Dispose(disposing); } #endregion #region Windows Form Designer generated code ////// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WorkflowPageSetupDialog)); this.tabs = new System.Windows.Forms.TabControl(); this.pageSettingsTab = new System.Windows.Forms.TabPage(); this.centerGroup = new System.Windows.Forms.GroupBox(); this.centerTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.CenterVerticallyCheckBox = new System.Windows.Forms.CheckBox(); this.CenterHorizontallyCheckBox = new System.Windows.Forms.CheckBox(); this.marginsGroup = new System.Windows.Forms.GroupBox(); this.marginsTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.marginsRightInput = new System.Windows.Forms.NumericUpDown(); this.marginsBottomInput = new System.Windows.Forms.NumericUpDown(); this.marginsTopLabel = new System.Windows.Forms.Label(); this.marginsLeftLabel = new System.Windows.Forms.Label(); this.marginsRightLabel = new System.Windows.Forms.Label(); this.marginsBottomLabel = new System.Windows.Forms.Label(); this.marginsTopInput = new System.Windows.Forms.NumericUpDown(); this.marginsLeftInput = new System.Windows.Forms.NumericUpDown(); this.scalingGroup = new System.Windows.Forms.GroupBox(); this.scalingTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.fitToTallLabel = new System.Windows.Forms.Label(); this.scalingOfSizeLabel = new System.Windows.Forms.Label(); this.fitToWideLabel = new System.Windows.Forms.Label(); this.adjustToRadioButton = new System.Windows.Forms.RadioButton(); this.fitToPagesTallInput = new System.Windows.Forms.NumericUpDown(); this.fitToPagesWideInput = new System.Windows.Forms.NumericUpDown(); this.adjustToScaleInput = new System.Windows.Forms.NumericUpDown(); this.fitToRadioButton = new System.Windows.Forms.RadioButton(); this.orientationGroup = new System.Windows.Forms.GroupBox(); this.orientationTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.landscapeRadioButton = new System.Windows.Forms.RadioButton(); this.landscapePicture = new System.Windows.Forms.PictureBox(); this.portraitRadioButton = new System.Windows.Forms.RadioButton(); this.portraitPicture = new System.Windows.Forms.PictureBox(); this.paperSettingsGroup = new System.Windows.Forms.GroupBox(); this.paperTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.paperSourceComboBox = new System.Windows.Forms.ComboBox(); this.paperSizeComboBox = new System.Windows.Forms.ComboBox(); this.paperSizeLabel = new System.Windows.Forms.Label(); this.paperSourceLabel = new System.Windows.Forms.Label(); this.headerFooterTab = new System.Windows.Forms.TabPage(); this.footerGroup = new System.Windows.Forms.GroupBox(); this.footerTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.footerTextLabel = new System.Windows.Forms.Label(); this.footerAlignmentLabel = new System.Windows.Forms.Label(); this.footerMarginUnitsLabel = new System.Windows.Forms.Label(); this.footerMarginLabel = new System.Windows.Forms.Label(); this.footerMarginInput = new System.Windows.Forms.NumericUpDown(); this.footerTextComboBox = new System.Windows.Forms.ComboBox(); this.footerAlignmentComboBox = new System.Windows.Forms.ComboBox(); this.customFooterText = new System.Windows.Forms.TextBox(); this.customFooterLabel = new System.Windows.Forms.Label(); this.headerGroup = new System.Windows.Forms.GroupBox(); this.headerTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.headerTextLabel = new System.Windows.Forms.Label(); this.headerAlignmentLabel = new System.Windows.Forms.Label(); this.headerMarginUnitsLabel = new System.Windows.Forms.Label(); this.headerMarginLabel = new System.Windows.Forms.Label(); this.headerMarginInput = new System.Windows.Forms.NumericUpDown(); this.headerTextComboBox = new System.Windows.Forms.ComboBox(); this.headerAlignmentComboBox = new System.Windows.Forms.ComboBox(); this.customHeaderText = new System.Windows.Forms.TextBox(); this.customHeaderLabel = new System.Windows.Forms.Label(); this.OKButton = new System.Windows.Forms.Button(); this.cancelButton = new System.Windows.Forms.Button(); this.printerButton = new System.Windows.Forms.Button(); this.okCancelTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.tabs.SuspendLayout(); this.pageSettingsTab.SuspendLayout(); this.centerGroup.SuspendLayout(); this.centerTableLayoutPanel.SuspendLayout(); this.marginsGroup.SuspendLayout(); this.marginsTableLayoutPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.marginsRightInput)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsBottomInput)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsTopInput)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsLeftInput)).BeginInit(); this.scalingGroup.SuspendLayout(); this.scalingTableLayoutPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.fitToPagesTallInput)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.fitToPagesWideInput)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.adjustToScaleInput)).BeginInit(); this.orientationGroup.SuspendLayout(); this.orientationTableLayoutPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.landscapePicture)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.portraitPicture)).BeginInit(); this.paperSettingsGroup.SuspendLayout(); this.paperTableLayoutPanel.SuspendLayout(); this.headerFooterTab.SuspendLayout(); this.footerGroup.SuspendLayout(); this.footerTableLayoutPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.footerMarginInput)).BeginInit(); this.headerGroup.SuspendLayout(); this.headerTableLayoutPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.headerMarginInput)).BeginInit(); this.okCancelTableLayoutPanel.SuspendLayout(); this.SuspendLayout(); // // tabs // resources.ApplyResources(this.tabs, "tabs"); this.tabs.Controls.Add(this.pageSettingsTab); this.tabs.Controls.Add(this.headerFooterTab); this.tabs.Name = "tabs"; this.tabs.SelectedIndex = 0; // // pageSettingsTab // this.pageSettingsTab.Controls.Add(this.centerGroup); this.pageSettingsTab.Controls.Add(this.marginsGroup); this.pageSettingsTab.Controls.Add(this.scalingGroup); this.pageSettingsTab.Controls.Add(this.orientationGroup); this.pageSettingsTab.Controls.Add(this.paperSettingsGroup); resources.ApplyResources(this.pageSettingsTab, "pageSettingsTab"); this.pageSettingsTab.Name = "pageSettingsTab"; // // centerGroup // resources.ApplyResources(this.centerGroup, "centerGroup"); this.centerGroup.Controls.Add(this.centerTableLayoutPanel); this.centerGroup.Name = "centerGroup"; this.centerGroup.TabStop = false; // // centerTableLayoutPanel // resources.ApplyResources(this.centerTableLayoutPanel, "centerTableLayoutPanel"); this.centerTableLayoutPanel.Controls.Add(this.CenterVerticallyCheckBox, 1, 0); this.centerTableLayoutPanel.Controls.Add(this.CenterHorizontallyCheckBox, 0, 0); this.centerTableLayoutPanel.Name = "centerTableLayoutPanel"; // // CenterVerticallyCheckBox // resources.ApplyResources(this.CenterVerticallyCheckBox, "CenterVerticallyCheckBox"); this.CenterVerticallyCheckBox.Name = "CenterVerticallyCheckBox"; // // CenterHorizontallyCheckBox // resources.ApplyResources(this.CenterHorizontallyCheckBox, "CenterHorizontallyCheckBox"); this.CenterHorizontallyCheckBox.Name = "CenterHorizontallyCheckBox"; // // marginsGroup // resources.ApplyResources(this.marginsGroup, "marginsGroup"); this.marginsGroup.Controls.Add(this.marginsTableLayoutPanel); this.marginsGroup.Name = "marginsGroup"; this.marginsGroup.TabStop = false; // // marginsTableLayoutPanel // resources.ApplyResources(this.marginsTableLayoutPanel, "marginsTableLayoutPanel"); this.marginsTableLayoutPanel.Controls.Add(this.marginsRightInput, 3, 1); this.marginsTableLayoutPanel.Controls.Add(this.marginsBottomInput, 3, 0); this.marginsTableLayoutPanel.Controls.Add(this.marginsTopLabel, 0, 0); this.marginsTableLayoutPanel.Controls.Add(this.marginsLeftLabel, 0, 1); this.marginsTableLayoutPanel.Controls.Add(this.marginsRightLabel, 2, 1); this.marginsTableLayoutPanel.Controls.Add(this.marginsBottomLabel, 2, 0); this.marginsTableLayoutPanel.Controls.Add(this.marginsTopInput, 1, 0); this.marginsTableLayoutPanel.Controls.Add(this.marginsLeftInput, 1, 1); this.marginsTableLayoutPanel.Name = "marginsTableLayoutPanel"; // // marginsRightInput // resources.ApplyResources(this.marginsRightInput, "marginsRightInput"); this.marginsRightInput.DecimalPlaces = 2; this.marginsRightInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.marginsRightInput.Name = "marginsRightInput"; this.marginsRightInput.Value = new decimal(new int[] { 100, 0, 0, 131072}); this.marginsRightInput.Validating += new System.ComponentModel.CancelEventHandler(this.Margins_Validating); // // marginsBottomInput // resources.ApplyResources(this.marginsBottomInput, "marginsBottomInput"); this.marginsBottomInput.DecimalPlaces = 2; this.marginsBottomInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.marginsBottomInput.Name = "marginsBottomInput"; this.marginsBottomInput.Value = new decimal(new int[] { 100, 0, 0, 131072}); this.marginsBottomInput.Validating += new System.ComponentModel.CancelEventHandler(this.Margins_Validating); // // marginsTopLabel // resources.ApplyResources(this.marginsTopLabel, "marginsTopLabel"); this.marginsTopLabel.Name = "marginsTopLabel"; // // marginsLeftLabel // resources.ApplyResources(this.marginsLeftLabel, "marginsLeftLabel"); this.marginsLeftLabel.Name = "marginsLeftLabel"; // // marginsRightLabel // resources.ApplyResources(this.marginsRightLabel, "marginsRightLabel"); this.marginsRightLabel.Name = "marginsRightLabel"; // // marginsBottomLabel // resources.ApplyResources(this.marginsBottomLabel, "marginsBottomLabel"); this.marginsBottomLabel.Name = "marginsBottomLabel"; // // marginsTopInput // resources.ApplyResources(this.marginsTopInput, "marginsTopInput"); this.marginsTopInput.DecimalPlaces = 2; this.marginsTopInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.marginsTopInput.Name = "marginsTopInput"; this.marginsTopInput.Value = new decimal(new int[] { 100, 0, 0, 131072}); this.marginsTopInput.Validating += new System.ComponentModel.CancelEventHandler(this.Margins_Validating); // // marginsLeftInput // resources.ApplyResources(this.marginsLeftInput, "marginsLeftInput"); this.marginsLeftInput.DecimalPlaces = 2; this.marginsLeftInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.marginsLeftInput.Name = "marginsLeftInput"; this.marginsLeftInput.Value = new decimal(new int[] { 100, 0, 0, 131072}); this.marginsLeftInput.Validating += new System.ComponentModel.CancelEventHandler(this.Margins_Validating); // // scalingGroup // resources.ApplyResources(this.scalingGroup, "scalingGroup"); this.scalingGroup.Controls.Add(this.scalingTableLayoutPanel); this.scalingGroup.Name = "scalingGroup"; this.scalingGroup.TabStop = false; // // scalingTableLayoutPanel // resources.ApplyResources(this.scalingTableLayoutPanel, "scalingTableLayoutPanel"); this.scalingTableLayoutPanel.Controls.Add(this.fitToTallLabel, 2, 2); this.scalingTableLayoutPanel.Controls.Add(this.scalingOfSizeLabel, 2, 0); this.scalingTableLayoutPanel.Controls.Add(this.fitToWideLabel, 2, 1); this.scalingTableLayoutPanel.Controls.Add(this.adjustToRadioButton, 0, 0); this.scalingTableLayoutPanel.Controls.Add(this.fitToPagesTallInput, 1, 2); this.scalingTableLayoutPanel.Controls.Add(this.fitToPagesWideInput, 1, 1); this.scalingTableLayoutPanel.Controls.Add(this.adjustToScaleInput, 1, 0); this.scalingTableLayoutPanel.Controls.Add(this.fitToRadioButton, 0, 1); this.scalingTableLayoutPanel.Name = "scalingTableLayoutPanel"; // // fitToTallLabel // resources.ApplyResources(this.fitToTallLabel, "fitToTallLabel"); this.fitToTallLabel.Name = "fitToTallLabel"; // // scalingOfSizeLabel // resources.ApplyResources(this.scalingOfSizeLabel, "scalingOfSizeLabel"); this.scalingOfSizeLabel.Name = "scalingOfSizeLabel"; // // fitToWideLabel // resources.ApplyResources(this.fitToWideLabel, "fitToWideLabel"); this.fitToWideLabel.Name = "fitToWideLabel"; // // adjustToRadioButton // resources.ApplyResources(this.adjustToRadioButton, "adjustToRadioButton"); this.adjustToRadioButton.Name = "adjustToRadioButton"; // // fitToPagesTallInput // resources.ApplyResources(this.fitToPagesTallInput, "fitToPagesTallInput"); this.fitToPagesTallInput.Maximum = new decimal(new int[] { 20, 0, 0, 0}); this.fitToPagesTallInput.Minimum = new decimal(new int[] { 1, 0, 0, 0}); this.fitToPagesTallInput.Name = "fitToPagesTallInput"; this.fitToPagesTallInput.Value = new decimal(new int[] { 1, 0, 0, 0}); this.fitToPagesTallInput.ValueChanged += new System.EventHandler(this.fitToInputs_ValueChanged); // // fitToPagesWideInput // resources.ApplyResources(this.fitToPagesWideInput, "fitToPagesWideInput"); this.fitToPagesWideInput.Maximum = new decimal(new int[] { 20, 0, 0, 0}); this.fitToPagesWideInput.Minimum = new decimal(new int[] { 1, 0, 0, 0}); this.fitToPagesWideInput.Name = "fitToPagesWideInput"; this.fitToPagesWideInput.Value = new decimal(new int[] { 1, 0, 0, 0}); this.fitToPagesWideInput.ValueChanged += new System.EventHandler(this.fitToInputs_ValueChanged); // // adjustToScaleInput // resources.ApplyResources(this.adjustToScaleInput, "adjustToScaleInput"); this.adjustToScaleInput.Maximum = new decimal(new int[] { 400, 0, 0, 0}); this.adjustToScaleInput.Minimum = new decimal(new int[] { 10, 0, 0, 0}); this.adjustToScaleInput.Name = "adjustToScaleInput"; this.adjustToScaleInput.Value = new decimal(new int[] { 100, 0, 0, 0}); this.adjustToScaleInput.ValueChanged += new System.EventHandler(this.adjustToInput_ValueChanged); // // fitToRadioButton // resources.ApplyResources(this.fitToRadioButton, "fitToRadioButton"); this.fitToRadioButton.Name = "fitToRadioButton"; // // orientationGroup // resources.ApplyResources(this.orientationGroup, "orientationGroup"); this.orientationGroup.Controls.Add(this.orientationTableLayoutPanel); this.orientationGroup.Name = "orientationGroup"; this.orientationGroup.TabStop = false; // // orientationTableLayoutPanel // resources.ApplyResources(this.orientationTableLayoutPanel, "orientationTableLayoutPanel"); this.orientationTableLayoutPanel.Controls.Add(this.landscapeRadioButton, 3, 0); this.orientationTableLayoutPanel.Controls.Add(this.landscapePicture, 2, 0); this.orientationTableLayoutPanel.Controls.Add(this.portraitRadioButton, 1, 0); this.orientationTableLayoutPanel.Controls.Add(this.portraitPicture, 0, 0); this.orientationTableLayoutPanel.Name = "orientationTableLayoutPanel"; // // landscapeRadioButton // resources.ApplyResources(this.landscapeRadioButton, "landscapeRadioButton"); this.landscapeRadioButton.Name = "landscapeRadioButton"; this.landscapeRadioButton.CheckedChanged += new System.EventHandler(this.landscapeRadioButton_CheckedChanged); // // landscapePicture // resources.ApplyResources(this.landscapePicture, "landscapePicture"); this.landscapePicture.Name = "landscapePicture"; this.landscapePicture.TabStop = false; // // portraitRadioButton // resources.ApplyResources(this.portraitRadioButton, "portraitRadioButton"); this.portraitRadioButton.Name = "portraitRadioButton"; this.portraitRadioButton.CheckedChanged += new System.EventHandler(this.portraitRadioButton_CheckedChanged); // // portraitPicture // resources.ApplyResources(this.portraitPicture, "portraitPicture"); this.portraitPicture.Name = "portraitPicture"; this.portraitPicture.TabStop = false; // // paperSettingsGroup // resources.ApplyResources(this.paperSettingsGroup, "paperSettingsGroup"); this.paperSettingsGroup.Controls.Add(this.paperTableLayoutPanel); this.paperSettingsGroup.Name = "paperSettingsGroup"; this.paperSettingsGroup.TabStop = false; // // paperTableLayoutPanel // resources.ApplyResources(this.paperTableLayoutPanel, "paperTableLayoutPanel"); this.paperTableLayoutPanel.Controls.Add(this.paperSourceComboBox, 1, 1); this.paperTableLayoutPanel.Controls.Add(this.paperSizeComboBox, 1, 0); this.paperTableLayoutPanel.Controls.Add(this.paperSizeLabel, 0, 0); this.paperTableLayoutPanel.Controls.Add(this.paperSourceLabel, 0, 1); this.paperTableLayoutPanel.Name = "paperTableLayoutPanel"; // // paperSourceComboBox // resources.ApplyResources(this.paperSourceComboBox, "paperSourceComboBox"); this.paperSourceComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.paperSourceComboBox.FormattingEnabled = true; this.paperSourceComboBox.Name = "paperSourceComboBox"; // // paperSizeComboBox // resources.ApplyResources(this.paperSizeComboBox, "paperSizeComboBox"); this.paperSizeComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.paperSizeComboBox.FormattingEnabled = true; this.paperSizeComboBox.Name = "paperSizeComboBox"; this.paperSizeComboBox.SelectedIndexChanged += new System.EventHandler(this.paperSizeComboBox_SelectedIndexChanged); // // paperSizeLabel // resources.ApplyResources(this.paperSizeLabel, "paperSizeLabel"); this.paperSizeLabel.Name = "paperSizeLabel"; // // paperSourceLabel // resources.ApplyResources(this.paperSourceLabel, "paperSourceLabel"); this.paperSourceLabel.Name = "paperSourceLabel"; // // headerFooterTab // this.headerFooterTab.Controls.Add(this.footerGroup); this.headerFooterTab.Controls.Add(this.headerGroup); resources.ApplyResources(this.headerFooterTab, "headerFooterTab"); this.headerFooterTab.Name = "headerFooterTab"; // // footerGroup // resources.ApplyResources(this.footerGroup, "footerGroup"); this.footerGroup.Controls.Add(this.footerTableLayoutPanel); this.footerGroup.Controls.Add(this.customFooterText); this.footerGroup.Controls.Add(this.customFooterLabel); this.footerGroup.Name = "footerGroup"; this.footerGroup.TabStop = false; // // footerTableLayoutPanel // resources.ApplyResources(this.footerTableLayoutPanel, "footerTableLayoutPanel"); this.footerTableLayoutPanel.Controls.Add(this.footerTextLabel, 0, 0); this.footerTableLayoutPanel.Controls.Add(this.footerAlignmentLabel, 0, 1); this.footerTableLayoutPanel.Controls.Add(this.footerMarginUnitsLabel, 2, 2); this.footerTableLayoutPanel.Controls.Add(this.footerMarginLabel, 0, 2); this.footerTableLayoutPanel.Controls.Add(this.footerMarginInput, 1, 2); this.footerTableLayoutPanel.Controls.Add(this.footerTextComboBox, 1, 0); this.footerTableLayoutPanel.Controls.Add(this.footerAlignmentComboBox, 1, 1); this.footerTableLayoutPanel.Name = "footerTableLayoutPanel"; // // footerTextLabel // resources.ApplyResources(this.footerTextLabel, "footerTextLabel"); this.footerTextLabel.Name = "footerTextLabel"; // // footerAlignmentLabel // resources.ApplyResources(this.footerAlignmentLabel, "footerAlignmentLabel"); this.footerAlignmentLabel.Name = "footerAlignmentLabel"; // // footerMarginUnitsLabel // resources.ApplyResources(this.footerMarginUnitsLabel, "footerMarginUnitsLabel"); this.footerMarginUnitsLabel.Name = "footerMarginUnitsLabel"; // // footerMarginLabel // resources.ApplyResources(this.footerMarginLabel, "footerMarginLabel"); this.footerMarginLabel.Name = "footerMarginLabel"; // // footerMarginInput // resources.ApplyResources(this.footerMarginInput, "footerMarginInput"); this.footerMarginInput.DecimalPlaces = 2; this.footerMarginInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.footerMarginInput.Name = "footerMarginInput"; this.footerMarginInput.Value = new decimal(new int[] { 1, 0, 0, 0}); this.footerMarginInput.Validating += new System.ComponentModel.CancelEventHandler(this.footerMarginInput_Validating); // // footerTextComboBox // resources.ApplyResources(this.footerTextComboBox, "footerTextComboBox"); this.footerTableLayoutPanel.SetColumnSpan(this.footerTextComboBox, 2); this.footerTextComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.footerTextComboBox.FormattingEnabled = true; this.footerTextComboBox.Name = "footerTextComboBox"; this.footerTextComboBox.SelectedIndexChanged += new System.EventHandler(this.footerTextComboBox_SelectedIndexChanged); // // footerAlignmentComboBox // resources.ApplyResources(this.footerAlignmentComboBox, "footerAlignmentComboBox"); this.footerTableLayoutPanel.SetColumnSpan(this.footerAlignmentComboBox, 2); this.footerAlignmentComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.footerAlignmentComboBox.FormattingEnabled = true; this.footerAlignmentComboBox.Name = "footerAlignmentComboBox"; // // customFooterText // resources.ApplyResources(this.customFooterText, "customFooterText"); this.customFooterText.Name = "customFooterText"; // // customFooterLabel // resources.ApplyResources(this.customFooterLabel, "customFooterLabel"); this.customFooterLabel.Name = "customFooterLabel"; // // headerGroup // resources.ApplyResources(this.headerGroup, "headerGroup"); this.headerGroup.Controls.Add(this.headerTableLayoutPanel); this.headerGroup.Controls.Add(this.customHeaderText); this.headerGroup.Controls.Add(this.customHeaderLabel); this.headerGroup.Name = "headerGroup"; this.headerGroup.TabStop = false; // // headerTableLayoutPanel // resources.ApplyResources(this.headerTableLayoutPanel, "headerTableLayoutPanel"); this.headerTableLayoutPanel.Controls.Add(this.headerTextLabel, 0, 0); this.headerTableLayoutPanel.Controls.Add(this.headerAlignmentLabel, 0, 1); this.headerTableLayoutPanel.Controls.Add(this.headerMarginUnitsLabel, 2, 2); this.headerTableLayoutPanel.Controls.Add(this.headerMarginLabel, 0, 2); this.headerTableLayoutPanel.Controls.Add(this.headerMarginInput, 1, 2); this.headerTableLayoutPanel.Controls.Add(this.headerTextComboBox, 1, 0); this.headerTableLayoutPanel.Controls.Add(this.headerAlignmentComboBox, 1, 1); this.headerTableLayoutPanel.Name = "headerTableLayoutPanel"; // // headerTextLabel // resources.ApplyResources(this.headerTextLabel, "headerTextLabel"); this.headerTextLabel.Name = "headerTextLabel"; // // headerAlignmentLabel // resources.ApplyResources(this.headerAlignmentLabel, "headerAlignmentLabel"); this.headerAlignmentLabel.Cursor = System.Windows.Forms.Cursors.Arrow; this.headerAlignmentLabel.Name = "headerAlignmentLabel"; // // headerMarginUnitsLabel // resources.ApplyResources(this.headerMarginUnitsLabel, "headerMarginUnitsLabel"); this.headerMarginUnitsLabel.Name = "headerMarginUnitsLabel"; // // headerMarginLabel // resources.ApplyResources(this.headerMarginLabel, "headerMarginLabel"); this.headerMarginLabel.Name = "headerMarginLabel"; // // headerMarginInput // resources.ApplyResources(this.headerMarginInput, "headerMarginInput"); this.headerMarginInput.DecimalPlaces = 2; this.headerMarginInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.headerMarginInput.Name = "headerMarginInput"; this.headerMarginInput.Value = new decimal(new int[] { 1, 0, 0, 0}); this.headerMarginInput.Validating += new System.ComponentModel.CancelEventHandler(this.headerMarginInput_Validating); // // headerTextComboBox // resources.ApplyResources(this.headerTextComboBox, "headerTextComboBox"); this.headerTableLayoutPanel.SetColumnSpan(this.headerTextComboBox, 2); this.headerTextComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.headerTextComboBox.FormattingEnabled = true; this.headerTextComboBox.Name = "headerTextComboBox"; this.headerTextComboBox.SelectedIndexChanged += new System.EventHandler(this.headerTextComboBox_SelectedIndexChanged); // // headerAlignmentComboBox // resources.ApplyResources(this.headerAlignmentComboBox, "headerAlignmentComboBox"); this.headerTableLayoutPanel.SetColumnSpan(this.headerAlignmentComboBox, 2); this.headerAlignmentComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.headerAlignmentComboBox.FormattingEnabled = true; this.headerAlignmentComboBox.Name = "headerAlignmentComboBox"; // // customHeaderText // resources.ApplyResources(this.customHeaderText, "customHeaderText"); this.customHeaderText.Name = "customHeaderText"; // // customHeaderLabel // resources.ApplyResources(this.customHeaderLabel, "customHeaderLabel"); this.customHeaderLabel.Name = "customHeaderLabel"; // // OKButton // resources.ApplyResources(this.OKButton, "OKButton"); this.OKButton.DialogResult = System.Windows.Forms.DialogResult.OK; this.OKButton.Name = "OKButton"; this.OKButton.Click += new System.EventHandler(this.OKButton_Click); // // cancelButton // resources.ApplyResources(this.cancelButton, "cancelButton"); this.cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; this.cancelButton.Name = "cancelButton"; // // printerButton // resources.ApplyResources(this.printerButton, "printerButton"); this.printerButton.Name = "printerButton"; this.printerButton.Click += new System.EventHandler(this.printerButton_Click); // // okCancelTableLayoutPanel // resources.ApplyResources(this.okCancelTableLayoutPanel, "okCancelTableLayoutPanel"); this.okCancelTableLayoutPanel.Controls.Add(this.OKButton, 0, 0); this.okCancelTableLayoutPanel.Controls.Add(this.cancelButton, 1, 0); this.okCancelTableLayoutPanel.Controls.Add(this.printerButton, 2, 0); this.okCancelTableLayoutPanel.Name = "okCancelTableLayoutPanel"; // // WorkflowPageSetupDialog // this.AcceptButton = this.OKButton; resources.ApplyResources(this, "$this"); this.CancelButton = this.cancelButton; this.Controls.Add(this.okCancelTableLayoutPanel); this.Controls.Add(this.tabs); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; this.HelpButton = true; this.MaximizeBox = false; this.MinimizeBox = false; this.Name = "WorkflowPageSetupDialog"; this.ShowInTaskbar = false; this.HelpButtonClicked += new System.ComponentModel.CancelEventHandler(this.WorkflowPageSetupDialog_HelpButtonClicked); this.tabs.ResumeLayout(false); this.pageSettingsTab.ResumeLayout(false); this.centerGroup.ResumeLayout(false); this.centerTableLayoutPanel.ResumeLayout(false); this.centerTableLayoutPanel.PerformLayout(); this.marginsGroup.ResumeLayout(false); this.marginsTableLayoutPanel.ResumeLayout(false); this.marginsTableLayoutPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.marginsRightInput)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsBottomInput)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsTopInput)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsLeftInput)).EndInit(); this.scalingGroup.ResumeLayout(false); this.scalingTableLayoutPanel.ResumeLayout(false); this.scalingTableLayoutPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.fitToPagesTallInput)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.fitToPagesWideInput)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.adjustToScaleInput)).EndInit(); this.orientationGroup.ResumeLayout(false); this.orientationTableLayoutPanel.ResumeLayout(false); this.orientationTableLayoutPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.landscapePicture)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.portraitPicture)).EndInit(); this.paperSettingsGroup.ResumeLayout(false); this.paperTableLayoutPanel.ResumeLayout(false); this.paperTableLayoutPanel.PerformLayout(); this.headerFooterTab.ResumeLayout(false); this.footerGroup.ResumeLayout(false); this.footerGroup.PerformLayout(); this.footerTableLayoutPanel.ResumeLayout(false); this.footerTableLayoutPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.footerMarginInput)).EndInit(); this.headerGroup.ResumeLayout(false); this.headerGroup.PerformLayout(); this.headerTableLayoutPanel.ResumeLayout(false); this.headerTableLayoutPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.headerMarginInput)).EndInit(); this.okCancelTableLayoutPanel.ResumeLayout(false); this.okCancelTableLayoutPanel.PerformLayout(); this.ResumeLayout(false); this.PerformLayout(); } #endregion #region Events private void OKButton_Click(object sender, System.EventArgs e) { //serialize state of the dialog into the pageSetupData object Margins margins = GetMarginsFromUI(); //scaling this.printDocument.PageSetupData.AdjustToScaleFactor = this.adjustToRadioButton.Checked; this.printDocument.PageSetupData.ScaleFactor = (int)this.adjustToScaleInput.Value; this.printDocument.PageSetupData.PagesWide = (int)this.fitToPagesWideInput.Value; this.printDocument.PageSetupData.PagesTall = (int)this.fitToPagesTallInput.Value; //Set the orientation this.printDocument.PageSetupData.Landscape = this.landscapeRadioButton.Checked; this.printDocument.PageSetupData.Margins = margins; //centering this.printDocument.PageSetupData.CenterHorizontally = this.CenterHorizontallyCheckBox.Checked; this.printDocument.PageSetupData.CenterVertically = this.CenterVerticallyCheckBox.Checked; //header inputs if(this.headerTextComboBox.SelectedIndex == 0) this.printDocument.PageSetupData.HeaderTemplate = string.Empty; else if(!this.headerTextComboBox.Text.Equals(this.headerFooterCustom)) this.printDocument.PageSetupData.HeaderTemplate = this.headerTextComboBox.Text; else this.printDocument.PageSetupData.HeaderTemplate = this.customHeaderText.Text; this.printDocument.PageSetupData.HeaderCustom = this.headerCustom; this.printDocument.PageSetupData.HeaderAlignment = (HorizontalAlignment)this.headerAlignmentComboBox.SelectedItem; this.printDocument.PageSetupData.HeaderMargin = UIUnitToPrinterUnit(this.headerMarginInput.Value); //footer inputs if(this.footerTextComboBox.SelectedIndex == 0) this.printDocument.PageSetupData.FooterTemplate = string.Empty; else if(!this.footerTextComboBox.Text.Equals(this.headerFooterCustom)) this.printDocument.PageSetupData.FooterTemplate = this.footerTextComboBox.Text; else this.printDocument.PageSetupData.FooterTemplate = this.customFooterText.Text; this.printDocument.PageSetupData.FooterCustom = this.footerCustom; this.printDocument.PageSetupData.FooterAlignment = (HorizontalAlignment)this.footerAlignmentComboBox.SelectedItem; this.printDocument.PageSetupData.FooterMargin = UIUnitToPrinterUnit(this.footerMarginInput.Value); // Set the paper size based upon the selection in the combo box. if (PrinterSettings.InstalledPrinters.Count > 0) { if (this.paperSizeComboBox.SelectedItem != null) this.printDocument.DefaultPageSettings.PaperSize = (PaperSize)this.paperSizeComboBox.SelectedItem; // Set the paper source based upon the selection in the combo box. if (this.paperSourceComboBox.SelectedItem != null) this.printDocument.DefaultPageSettings.PaperSource = (PaperSource)this.paperSourceComboBox.SelectedItem; this.printDocument.DefaultPageSettings.Landscape = this.printDocument.PageSetupData.Landscape; this.printDocument.DefaultPageSettings.Margins = margins; //Make sure that printer setting are changed this.printDocument.PrinterSettings.DefaultPageSettings.PaperSize = this.printDocument.DefaultPageSettings.PaperSize; this.printDocument.PrinterSettings.DefaultPageSettings.PaperSource = this.printDocument.DefaultPageSettings.PaperSource; this.printDocument.PrinterSettings.DefaultPageSettings.Landscape = this.printDocument.PageSetupData.Landscape; this.printDocument.PrinterSettings.DefaultPageSettings.Margins = margins; } this.printDocument.PageSetupData.StorePropertiesToRegistry(); DialogResult = DialogResult.OK; } private void printerButton_Click(object sender, System.EventArgs e) { PrintDialog printDialog = new System.Windows.Forms.PrintDialog(); printDialog.AllowPrintToFile = false; printDialog.Document = this.printDocument; try { if (DialogResult.OK == printDialog.ShowDialog()) { this.printDocument.PrinterSettings = printDialog.PrinterSettings; this.printDocument.DefaultPageSettings = printDialog.Document.DefaultPageSettings; if (this.printDocument.DefaultPageSettings.Landscape) this.landscapeRadioButton.Checked = true; else this.portraitRadioButton.Checked = true; InitializePaperInformation(); this.printDocument.Print(); } else { //todo: copy updated settings from the dialog to the print doc //in the worst case it's a no-op, in case user clicked apply/cancel it's the only way to //update the settings (see Winoe#3129 and VSWhidbey#403124 for more details) } } catch(Exception exception) { string errorString = DR.GetString(DR.SelectedPrinterIsInvalidErrorMessage); errorString += "\n" + exception.Message; DesignerHelpers.ShowError(this.serviceProvider, errorString); } } private void Margins_Validating(object sender, System.ComponentModel.CancelEventArgs e) { Margins margins = GetMarginsFromUI(); //get the current paper size Size physicalPageSize; PaperSize paperSize = this.paperSizeComboBox.SelectedItem as PaperSize; if(null != paperSize) physicalPageSize = new Size(paperSize.Width, paperSize.Height); else physicalPageSize = this.printDocument.DefaultPageSettings.Bounds.Size; //check the constrains int horizontalMarginsSum = margins.Left + margins.Right; int verticalMarginsSum = margins.Top + margins.Bottom; if (horizontalMarginsSum < physicalPageSize.Width && verticalMarginsSum < physicalPageSize.Height) return;//we are good //cancelling the change - constrains are not satisfied string errorString = DR.GetString(DR.EnteredMarginsAreNotValidErrorMessage); DesignerHelpers.ShowError(this.serviceProvider, errorString); e.Cancel = true; } private void headerTextComboBox_SelectedIndexChanged(object sender, System.EventArgs e) { this.headerCustom = this.headerTextComboBox.Text.Equals(this.headerFooterCustom); this.customHeaderText.Enabled = this.headerCustom; if (!this.headerCustom) this.customHeaderText.Text = this.headerTextComboBox.Text; } private void footerTextComboBox_SelectedIndexChanged(object sender, System.EventArgs e) { this.footerCustom = this.footerTextComboBox.Text.Equals(this.headerFooterCustom); this.customFooterText.Enabled = this.footerCustom; if (!this.footerCustom) this.customFooterText.Text = this.footerTextComboBox.Text; } private void paperSizeComboBox_SelectedIndexChanged(object sender, System.EventArgs e) { UpdateHeaderFooterMarginLimit(); } private void landscapeRadioButton_CheckedChanged(object sender, System.EventArgs e) { UpdateHeaderFooterMarginLimit(); } private void portraitRadioButton_CheckedChanged(object sender, System.EventArgs e) { UpdateHeaderFooterMarginLimit(); } private void UpdateHeaderFooterMarginLimit() { PaperSize paperSize = this.paperSizeComboBox.SelectedItem as PaperSize; if (paperSize != null) this.footerMarginInput.Maximum = this.headerMarginInput.Maximum = PrinterUnitToUIUnit(this.landscapeRadioButton.Checked ? paperSize.Width : paperSize.Height); } private void headerMarginInput_Validating(object sender, System.ComponentModel.CancelEventArgs e) { } private void footerMarginInput_Validating(object sender, System.ComponentModel.CancelEventArgs e) { } private void adjustToInput_ValueChanged(object sender, System.EventArgs e) { this.adjustToRadioButton.Checked = true; } private void fitToInputs_ValueChanged(object sender, System.EventArgs e) { this.fitToRadioButton.Checked = true; } #endregion #region Helpers private void InitializePaperInformation() { PrinterSettings.PaperSizeCollection paperSizeCollection = this.printDocument.PrinterSettings.PaperSizes; PrinterSettings.PaperSourceCollection paperSourceCollection = this.printDocument.PrinterSettings.PaperSources; this.paperSizeComboBox.Items.Clear(); this.paperSizeComboBox.DisplayMember = "PaperName"; foreach (PaperSize paperSize in paperSizeCollection) { if (paperSize.PaperName != null && paperSize.PaperName.Length > 0) { this.paperSizeComboBox.Items.Add(paperSize); if (null == this.paperSizeComboBox.SelectedItem && this.printDocument.DefaultPageSettings.PaperSize.Kind == paperSize.Kind && this.printDocument.DefaultPageSettings.PaperSize.Width == paperSize.Width && this.printDocument.DefaultPageSettings.PaperSize.Height == paperSize.Height) { this.paperSizeComboBox.SelectedItem = paperSize; this.printDocument.DefaultPageSettings.PaperSize = paperSize; } } } if (null == this.paperSizeComboBox.SelectedItem) { PaperKind paperKind = this.printDocument.DefaultPageSettings.PaperSize.Kind; this.printDocument.DefaultPageSettings = new PageSettings(this.printDocument.PrinterSettings); foreach (PaperSize paperSize in this.paperSizeComboBox.Items) { if (null == this.paperSizeComboBox.SelectedItem && paperKind == paperSize.Kind && this.printDocument.DefaultPageSettings.PaperSize.Width == paperSize.Width && this.printDocument.DefaultPageSettings.PaperSize.Height == paperSize.Height) { this.paperSizeComboBox.SelectedItem = paperSize; this.printDocument.DefaultPageSettings.PaperSize = paperSize; } } //We still did not find matching paper so not select first in the list if (null == this.paperSizeComboBox.SelectedItem && this.paperSizeComboBox.Items.Count > 0) { this.paperSizeComboBox.SelectedItem = this.paperSizeComboBox.Items[0] as PaperSize; this.printDocument.DefaultPageSettings.PaperSize = this.paperSizeComboBox.SelectedItem as PaperSize; } } ///////////////Select the appropriate paper source based on the pageSettings this.paperSourceComboBox.Items.Clear(); this.paperSourceComboBox.DisplayMember = "SourceName"; foreach (PaperSource paperSource in paperSourceCollection) { this.paperSourceComboBox.Items.Add(paperSource); if (null == this.paperSourceComboBox.SelectedItem && this.printDocument.DefaultPageSettings.PaperSource.Kind == paperSource.Kind && this.printDocument.DefaultPageSettings.PaperSource.SourceName == paperSource.SourceName) this.paperSourceComboBox.SelectedItem = paperSource; } if (null == this.paperSourceComboBox.SelectedItem && this.paperSourceComboBox.Items.Count > 0) { this.paperSourceComboBox.SelectedItem = this.paperSourceComboBox.Items[0] as PaperSource; this.printDocument.DefaultPageSettings.PaperSource = this.paperSourceComboBox.SelectedItem as PaperSource; } } // private void SetMarginsToUI(Margins margins) { this.marginsLeftInput.Value = PrinterUnitToUIUnit(margins.Left); this.marginsRightInput.Value = PrinterUnitToUIUnit(margins.Right); this.marginsTopInput.Value = PrinterUnitToUIUnit(margins.Top); this.marginsBottomInput.Value = PrinterUnitToUIUnit(margins.Bottom); } private Margins GetMarginsFromUI() { Margins margins = new Margins( UIUnitToPrinterUnit(this.marginsLeftInput.Value), UIUnitToPrinterUnit(this.marginsRightInput.Value), UIUnitToPrinterUnit(this.marginsTopInput.Value), UIUnitToPrinterUnit(this.marginsBottomInput.Value)); return margins; } private decimal PrinterUnitToUIUnit(int printerValue) { return Convert.ToDecimal((double)printerValue / 100.0d); //in 1/100 of inch } private int UIUnitToPrinterUnit(decimal uiValue) { return Convert.ToInt32((double)uiValue * 100.0d); //in 1/100 of inch } #endregion private void WorkflowPageSetupDialog_HelpButtonClicked(object sender, System.ComponentModel.CancelEventArgs e) { e.Cancel = true; GetHelp(); } protected override void OnHelpRequested(HelpEventArgs hlpevent) { hlpevent.Handled = true; GetHelp(); } private void GetHelp() { DesignerHelpers.ShowHelpFromKeyword(this.serviceProvider, typeof(WorkflowPageSetupDialog).FullName + ".UI"); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.IO; using System.Drawing; using System.Resources; using System.Windows.Forms; using System.Drawing.Printing; using System.ComponentModel.Design; namespace System.Workflow.ComponentModel.Design { ////// Summary description for Form1. /// public sealed class WorkflowPageSetupDialog : System.Windows.Forms.Form { #region [....] Desiger Generated Members private System.ComponentModel.Container components = null; private System.Windows.Forms.TabControl tabs; private System.Windows.Forms.PictureBox landscapePicture; private System.Windows.Forms.PictureBox portraitPicture; private System.Windows.Forms.TabPage pageSettingsTab; private System.Windows.Forms.GroupBox marginsGroup; private NumericUpDown marginsBottomInput; private NumericUpDown marginsRightInput; private NumericUpDown marginsTopInput; private System.Windows.Forms.Label marginsTopLabel; private System.Windows.Forms.Label marginsLeftLabel; private System.Windows.Forms.Label marginsBottomLabel; private System.Windows.Forms.Label marginsRightLabel; private NumericUpDown marginsLeftInput; private System.Windows.Forms.GroupBox scalingGroup; private NumericUpDown adjustToScaleInput; private System.Windows.Forms.RadioButton adjustToRadioButton; private System.Windows.Forms.RadioButton fitToRadioButton; private NumericUpDown fitToPagesWideInput; private NumericUpDown fitToPagesTallInput; private System.Windows.Forms.Label fitToTallLabel; private System.Windows.Forms.Label fitToWideLabel; private System.Windows.Forms.GroupBox orientationGroup; private System.Windows.Forms.RadioButton portraitRadioButton; private System.Windows.Forms.RadioButton landscapeRadioButton; private System.Windows.Forms.GroupBox paperSettingsGroup; private System.Windows.Forms.ComboBox paperSizeComboBox; private System.Windows.Forms.Label paperSizeLabel; private System.Windows.Forms.Label paperSourceLabel; private System.Windows.Forms.ComboBox paperSourceComboBox; private System.Windows.Forms.TabPage headerFooterTab; private System.Windows.Forms.GroupBox footerGroup; private System.Windows.Forms.GroupBox headerGroup; private System.Windows.Forms.ComboBox headerAlignmentComboBox; private System.Windows.Forms.Label headerAlignmentLabel; private System.Windows.Forms.ComboBox headerTextComboBox; private System.Windows.Forms.Label headerTextLabel; private System.Windows.Forms.Label headerMarginLabel; private System.Windows.Forms.Button OKButton; private System.Windows.Forms.Button cancelButton; private System.Windows.Forms.Button printerButton; private NumericUpDown headerMarginInput; private NumericUpDown footerMarginInput; private System.Windows.Forms.ComboBox footerAlignmentComboBox; private System.Windows.Forms.Label footerAlignmentLabel; private System.Windows.Forms.ComboBox footerTextComboBox; private System.Windows.Forms.Label footerTextLabel; private System.Windows.Forms.Label footerMarginLabel; private System.Windows.Forms.Label scalingOfSizeLabel; private System.Windows.Forms.Label footerMarginUnitsLabel; private System.Windows.Forms.Label headerMarginUnitsLabel; private System.Windows.Forms.TextBox customHeaderText; private System.Windows.Forms.Label customHeaderLabel; private System.Windows.Forms.Label customFooterLabel; private System.Windows.Forms.TextBox customFooterText; private System.Windows.Forms.GroupBox centerGroup; private System.Windows.Forms.CheckBox CenterHorizontallyCheckBox; private System.Windows.Forms.CheckBox CenterVerticallyCheckBox; #endregion #region Members and Constructor/Destructor private IServiceProvider serviceProvider; private WorkflowPrintDocument printDocument = null; private string headerFooterNone = null; private string headerFooterCustom = null; private string[] headerFooterTemplates = null; private bool headerCustom = false; private TableLayoutPanel okCancelTableLayoutPanel; private TableLayoutPanel paperTableLayoutPanel; private TableLayoutPanel centerTableLayoutPanel; private TableLayoutPanel marginsTableLayoutPanel; private TableLayoutPanel orientationTableLayoutPanel; private TableLayoutPanel scalingTableLayoutPanel; private TableLayoutPanel headerTableLayoutPanel; private TableLayoutPanel footerTableLayoutPanel; private bool footerCustom = false; public WorkflowPageSetupDialog(IServiceProvider serviceProvider) { if (serviceProvider == null) throw new ArgumentNullException("serviceProvider"); this.serviceProvider = serviceProvider; WorkflowView workflowView = this.serviceProvider.GetService(typeof(WorkflowView)) as WorkflowView; if (workflowView == null) throw new InvalidOperationException(SR.GetString(SR.General_MissingService, typeof(WorkflowView).FullName)); if (!(workflowView.PrintDocument is WorkflowPrintDocument)) throw new InvalidOperationException(DR.GetString(DR.WorkflowPrintDocumentNotFound, typeof(WorkflowPrintDocument).Name)); try { Cursor.Current = Cursors.WaitCursor; InitializeComponent(); this.printDocument = workflowView.PrintDocument as WorkflowPrintDocument; //deserialize state of the dialog from the page setup data scaling: //set the values scaling controls this.adjustToScaleInput.Value = this.printDocument.PageSetupData.ScaleFactor; this.fitToPagesWideInput.Value = this.printDocument.PageSetupData.PagesWide; this.fitToPagesTallInput.Value = this.printDocument.PageSetupData.PagesTall; //select the right mode if (this.printDocument.PageSetupData.AdjustToScaleFactor) this.adjustToRadioButton.Checked = true; else this.fitToRadioButton.Checked = true; //set the orientation if (this.printDocument.PageSetupData.Landscape) this.landscapeRadioButton.Checked = true; else this.portraitRadioButton.Checked = true; //margins SetMarginsToUI(this.printDocument.PageSetupData.Margins); //centering this.CenterHorizontallyCheckBox.Checked = this.printDocument.PageSetupData.CenterHorizontally; this.CenterVerticallyCheckBox.Checked = this.printDocument.PageSetupData.CenterVertically; //Initialize the paper InitializePaperInformation(); //read standard header/footer formats this.headerFooterNone = DR.GetString(DR.HeaderFooterStringNone);//"(none)" this.headerFooterCustom = DR.GetString(DR.HeaderFooterStringCustom);//"(none)" this.headerFooterTemplates = new string[] { DR.GetString(DR.HeaderFooterFormat1),//"Page %Page%",// DR.GetString(DR.HeaderFooterFormat2),//"Page %Page% of %Pages%",// DR.GetString(DR.HeaderFooterFormat3),//"%Path%%File, Page %Page% of %Pages%", // DR.GetString(DR.HeaderFooterFormat4),//"%Path%%File, Page %Page%",// DR.GetString(DR.HeaderFooterFormat5),//"%File, %Date% %Time%, Page %Page%",// DR.GetString(DR.HeaderFooterFormat6),//"%File, Page %Page% of %Pages%",// DR.GetString(DR.HeaderFooterFormat7),//"%File, Page %Page%",// DR.GetString(DR.HeaderFooterFormat8),//"Prepated by %User% %Date%",// DR.GetString(DR.HeaderFooterFormat9),//"%User%, Page %Page%, %Date%"// }; //header inputs this.headerTextComboBox.Items.Add(this.headerFooterNone); this.headerTextComboBox.Items.AddRange(this.headerFooterTemplates); this.headerTextComboBox.Items.Add(this.headerFooterCustom); this.headerTextComboBox.SelectedIndex = 0; string userHeader = this.printDocument.PageSetupData.HeaderTemplate; this.headerCustom = this.printDocument.PageSetupData.HeaderCustom; if (userHeader.Length == 0) { this.headerTextComboBox.SelectedIndex = 0;//none } else { int userHeaderIndex = this.headerTextComboBox.Items.IndexOf(userHeader); if (-1 == userHeaderIndex || this.headerCustom) { //this is an unknown template, put it into custom field this.headerTextComboBox.SelectedIndex = this.headerTextComboBox.Items.IndexOf(this.headerFooterCustom); this.customHeaderText.Text = userHeader; } else { this.headerTextComboBox.SelectedIndex = userHeaderIndex; } } this.headerAlignmentComboBox.Items.AddRange(new object[] { HorizontalAlignment.Left, HorizontalAlignment.Center, HorizontalAlignment.Right }); if (this.headerAlignmentComboBox.Items.IndexOf(this.printDocument.PageSetupData.HeaderAlignment) != -1) this.headerAlignmentComboBox.SelectedItem = this.printDocument.PageSetupData.HeaderAlignment; else this.headerAlignmentComboBox.SelectedItem = HorizontalAlignment.Center; this.headerMarginInput.Value = PrinterUnitToUIUnit(this.printDocument.PageSetupData.HeaderMargin); //footer inputs this.footerTextComboBox.Items.Add(this.headerFooterNone); this.footerTextComboBox.SelectedIndex = 0; this.footerTextComboBox.Items.AddRange(this.headerFooterTemplates); this.footerTextComboBox.Items.Add(this.headerFooterCustom); string userFooter = this.printDocument.PageSetupData.FooterTemplate; this.footerCustom = this.printDocument.PageSetupData.FooterCustom; if (userFooter.Length == 0) { this.footerTextComboBox.SelectedIndex = 0;//none } else { int userFooterIndex = this.footerTextComboBox.Items.IndexOf(userFooter); if (-1 == userFooterIndex || this.footerCustom) { //this is an unknown template, put it into custom field this.footerTextComboBox.SelectedIndex = this.footerTextComboBox.Items.IndexOf(this.headerFooterCustom); this.customFooterText.Text = userFooter; } else { this.footerTextComboBox.SelectedIndex = userFooterIndex; } } this.footerAlignmentComboBox.Items.AddRange(new object[] { HorizontalAlignment.Left, HorizontalAlignment.Center, HorizontalAlignment.Right }); if (this.footerAlignmentComboBox.Items.IndexOf(this.printDocument.PageSetupData.FooterAlignment) != -1) this.footerAlignmentComboBox.SelectedItem = this.printDocument.PageSetupData.FooterAlignment; else this.footerAlignmentComboBox.SelectedItem = HorizontalAlignment.Center; this.footerMarginInput.Value = PrinterUnitToUIUnit(this.printDocument.PageSetupData.FooterMargin); } finally { Cursor.Current = Cursors.Default; } } protected override void Dispose(bool disposing) { if (disposing) { if (components != null) components.Dispose(); } base.Dispose(disposing); } #endregion #region Windows Form Designer generated code ////// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WorkflowPageSetupDialog)); this.tabs = new System.Windows.Forms.TabControl(); this.pageSettingsTab = new System.Windows.Forms.TabPage(); this.centerGroup = new System.Windows.Forms.GroupBox(); this.centerTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.CenterVerticallyCheckBox = new System.Windows.Forms.CheckBox(); this.CenterHorizontallyCheckBox = new System.Windows.Forms.CheckBox(); this.marginsGroup = new System.Windows.Forms.GroupBox(); this.marginsTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.marginsRightInput = new System.Windows.Forms.NumericUpDown(); this.marginsBottomInput = new System.Windows.Forms.NumericUpDown(); this.marginsTopLabel = new System.Windows.Forms.Label(); this.marginsLeftLabel = new System.Windows.Forms.Label(); this.marginsRightLabel = new System.Windows.Forms.Label(); this.marginsBottomLabel = new System.Windows.Forms.Label(); this.marginsTopInput = new System.Windows.Forms.NumericUpDown(); this.marginsLeftInput = new System.Windows.Forms.NumericUpDown(); this.scalingGroup = new System.Windows.Forms.GroupBox(); this.scalingTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.fitToTallLabel = new System.Windows.Forms.Label(); this.scalingOfSizeLabel = new System.Windows.Forms.Label(); this.fitToWideLabel = new System.Windows.Forms.Label(); this.adjustToRadioButton = new System.Windows.Forms.RadioButton(); this.fitToPagesTallInput = new System.Windows.Forms.NumericUpDown(); this.fitToPagesWideInput = new System.Windows.Forms.NumericUpDown(); this.adjustToScaleInput = new System.Windows.Forms.NumericUpDown(); this.fitToRadioButton = new System.Windows.Forms.RadioButton(); this.orientationGroup = new System.Windows.Forms.GroupBox(); this.orientationTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.landscapeRadioButton = new System.Windows.Forms.RadioButton(); this.landscapePicture = new System.Windows.Forms.PictureBox(); this.portraitRadioButton = new System.Windows.Forms.RadioButton(); this.portraitPicture = new System.Windows.Forms.PictureBox(); this.paperSettingsGroup = new System.Windows.Forms.GroupBox(); this.paperTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.paperSourceComboBox = new System.Windows.Forms.ComboBox(); this.paperSizeComboBox = new System.Windows.Forms.ComboBox(); this.paperSizeLabel = new System.Windows.Forms.Label(); this.paperSourceLabel = new System.Windows.Forms.Label(); this.headerFooterTab = new System.Windows.Forms.TabPage(); this.footerGroup = new System.Windows.Forms.GroupBox(); this.footerTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.footerTextLabel = new System.Windows.Forms.Label(); this.footerAlignmentLabel = new System.Windows.Forms.Label(); this.footerMarginUnitsLabel = new System.Windows.Forms.Label(); this.footerMarginLabel = new System.Windows.Forms.Label(); this.footerMarginInput = new System.Windows.Forms.NumericUpDown(); this.footerTextComboBox = new System.Windows.Forms.ComboBox(); this.footerAlignmentComboBox = new System.Windows.Forms.ComboBox(); this.customFooterText = new System.Windows.Forms.TextBox(); this.customFooterLabel = new System.Windows.Forms.Label(); this.headerGroup = new System.Windows.Forms.GroupBox(); this.headerTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.headerTextLabel = new System.Windows.Forms.Label(); this.headerAlignmentLabel = new System.Windows.Forms.Label(); this.headerMarginUnitsLabel = new System.Windows.Forms.Label(); this.headerMarginLabel = new System.Windows.Forms.Label(); this.headerMarginInput = new System.Windows.Forms.NumericUpDown(); this.headerTextComboBox = new System.Windows.Forms.ComboBox(); this.headerAlignmentComboBox = new System.Windows.Forms.ComboBox(); this.customHeaderText = new System.Windows.Forms.TextBox(); this.customHeaderLabel = new System.Windows.Forms.Label(); this.OKButton = new System.Windows.Forms.Button(); this.cancelButton = new System.Windows.Forms.Button(); this.printerButton = new System.Windows.Forms.Button(); this.okCancelTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); this.tabs.SuspendLayout(); this.pageSettingsTab.SuspendLayout(); this.centerGroup.SuspendLayout(); this.centerTableLayoutPanel.SuspendLayout(); this.marginsGroup.SuspendLayout(); this.marginsTableLayoutPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.marginsRightInput)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsBottomInput)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsTopInput)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsLeftInput)).BeginInit(); this.scalingGroup.SuspendLayout(); this.scalingTableLayoutPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.fitToPagesTallInput)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.fitToPagesWideInput)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.adjustToScaleInput)).BeginInit(); this.orientationGroup.SuspendLayout(); this.orientationTableLayoutPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.landscapePicture)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.portraitPicture)).BeginInit(); this.paperSettingsGroup.SuspendLayout(); this.paperTableLayoutPanel.SuspendLayout(); this.headerFooterTab.SuspendLayout(); this.footerGroup.SuspendLayout(); this.footerTableLayoutPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.footerMarginInput)).BeginInit(); this.headerGroup.SuspendLayout(); this.headerTableLayoutPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.headerMarginInput)).BeginInit(); this.okCancelTableLayoutPanel.SuspendLayout(); this.SuspendLayout(); // // tabs // resources.ApplyResources(this.tabs, "tabs"); this.tabs.Controls.Add(this.pageSettingsTab); this.tabs.Controls.Add(this.headerFooterTab); this.tabs.Name = "tabs"; this.tabs.SelectedIndex = 0; // // pageSettingsTab // this.pageSettingsTab.Controls.Add(this.centerGroup); this.pageSettingsTab.Controls.Add(this.marginsGroup); this.pageSettingsTab.Controls.Add(this.scalingGroup); this.pageSettingsTab.Controls.Add(this.orientationGroup); this.pageSettingsTab.Controls.Add(this.paperSettingsGroup); resources.ApplyResources(this.pageSettingsTab, "pageSettingsTab"); this.pageSettingsTab.Name = "pageSettingsTab"; // // centerGroup // resources.ApplyResources(this.centerGroup, "centerGroup"); this.centerGroup.Controls.Add(this.centerTableLayoutPanel); this.centerGroup.Name = "centerGroup"; this.centerGroup.TabStop = false; // // centerTableLayoutPanel // resources.ApplyResources(this.centerTableLayoutPanel, "centerTableLayoutPanel"); this.centerTableLayoutPanel.Controls.Add(this.CenterVerticallyCheckBox, 1, 0); this.centerTableLayoutPanel.Controls.Add(this.CenterHorizontallyCheckBox, 0, 0); this.centerTableLayoutPanel.Name = "centerTableLayoutPanel"; // // CenterVerticallyCheckBox // resources.ApplyResources(this.CenterVerticallyCheckBox, "CenterVerticallyCheckBox"); this.CenterVerticallyCheckBox.Name = "CenterVerticallyCheckBox"; // // CenterHorizontallyCheckBox // resources.ApplyResources(this.CenterHorizontallyCheckBox, "CenterHorizontallyCheckBox"); this.CenterHorizontallyCheckBox.Name = "CenterHorizontallyCheckBox"; // // marginsGroup // resources.ApplyResources(this.marginsGroup, "marginsGroup"); this.marginsGroup.Controls.Add(this.marginsTableLayoutPanel); this.marginsGroup.Name = "marginsGroup"; this.marginsGroup.TabStop = false; // // marginsTableLayoutPanel // resources.ApplyResources(this.marginsTableLayoutPanel, "marginsTableLayoutPanel"); this.marginsTableLayoutPanel.Controls.Add(this.marginsRightInput, 3, 1); this.marginsTableLayoutPanel.Controls.Add(this.marginsBottomInput, 3, 0); this.marginsTableLayoutPanel.Controls.Add(this.marginsTopLabel, 0, 0); this.marginsTableLayoutPanel.Controls.Add(this.marginsLeftLabel, 0, 1); this.marginsTableLayoutPanel.Controls.Add(this.marginsRightLabel, 2, 1); this.marginsTableLayoutPanel.Controls.Add(this.marginsBottomLabel, 2, 0); this.marginsTableLayoutPanel.Controls.Add(this.marginsTopInput, 1, 0); this.marginsTableLayoutPanel.Controls.Add(this.marginsLeftInput, 1, 1); this.marginsTableLayoutPanel.Name = "marginsTableLayoutPanel"; // // marginsRightInput // resources.ApplyResources(this.marginsRightInput, "marginsRightInput"); this.marginsRightInput.DecimalPlaces = 2; this.marginsRightInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.marginsRightInput.Name = "marginsRightInput"; this.marginsRightInput.Value = new decimal(new int[] { 100, 0, 0, 131072}); this.marginsRightInput.Validating += new System.ComponentModel.CancelEventHandler(this.Margins_Validating); // // marginsBottomInput // resources.ApplyResources(this.marginsBottomInput, "marginsBottomInput"); this.marginsBottomInput.DecimalPlaces = 2; this.marginsBottomInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.marginsBottomInput.Name = "marginsBottomInput"; this.marginsBottomInput.Value = new decimal(new int[] { 100, 0, 0, 131072}); this.marginsBottomInput.Validating += new System.ComponentModel.CancelEventHandler(this.Margins_Validating); // // marginsTopLabel // resources.ApplyResources(this.marginsTopLabel, "marginsTopLabel"); this.marginsTopLabel.Name = "marginsTopLabel"; // // marginsLeftLabel // resources.ApplyResources(this.marginsLeftLabel, "marginsLeftLabel"); this.marginsLeftLabel.Name = "marginsLeftLabel"; // // marginsRightLabel // resources.ApplyResources(this.marginsRightLabel, "marginsRightLabel"); this.marginsRightLabel.Name = "marginsRightLabel"; // // marginsBottomLabel // resources.ApplyResources(this.marginsBottomLabel, "marginsBottomLabel"); this.marginsBottomLabel.Name = "marginsBottomLabel"; // // marginsTopInput // resources.ApplyResources(this.marginsTopInput, "marginsTopInput"); this.marginsTopInput.DecimalPlaces = 2; this.marginsTopInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.marginsTopInput.Name = "marginsTopInput"; this.marginsTopInput.Value = new decimal(new int[] { 100, 0, 0, 131072}); this.marginsTopInput.Validating += new System.ComponentModel.CancelEventHandler(this.Margins_Validating); // // marginsLeftInput // resources.ApplyResources(this.marginsLeftInput, "marginsLeftInput"); this.marginsLeftInput.DecimalPlaces = 2; this.marginsLeftInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.marginsLeftInput.Name = "marginsLeftInput"; this.marginsLeftInput.Value = new decimal(new int[] { 100, 0, 0, 131072}); this.marginsLeftInput.Validating += new System.ComponentModel.CancelEventHandler(this.Margins_Validating); // // scalingGroup // resources.ApplyResources(this.scalingGroup, "scalingGroup"); this.scalingGroup.Controls.Add(this.scalingTableLayoutPanel); this.scalingGroup.Name = "scalingGroup"; this.scalingGroup.TabStop = false; // // scalingTableLayoutPanel // resources.ApplyResources(this.scalingTableLayoutPanel, "scalingTableLayoutPanel"); this.scalingTableLayoutPanel.Controls.Add(this.fitToTallLabel, 2, 2); this.scalingTableLayoutPanel.Controls.Add(this.scalingOfSizeLabel, 2, 0); this.scalingTableLayoutPanel.Controls.Add(this.fitToWideLabel, 2, 1); this.scalingTableLayoutPanel.Controls.Add(this.adjustToRadioButton, 0, 0); this.scalingTableLayoutPanel.Controls.Add(this.fitToPagesTallInput, 1, 2); this.scalingTableLayoutPanel.Controls.Add(this.fitToPagesWideInput, 1, 1); this.scalingTableLayoutPanel.Controls.Add(this.adjustToScaleInput, 1, 0); this.scalingTableLayoutPanel.Controls.Add(this.fitToRadioButton, 0, 1); this.scalingTableLayoutPanel.Name = "scalingTableLayoutPanel"; // // fitToTallLabel // resources.ApplyResources(this.fitToTallLabel, "fitToTallLabel"); this.fitToTallLabel.Name = "fitToTallLabel"; // // scalingOfSizeLabel // resources.ApplyResources(this.scalingOfSizeLabel, "scalingOfSizeLabel"); this.scalingOfSizeLabel.Name = "scalingOfSizeLabel"; // // fitToWideLabel // resources.ApplyResources(this.fitToWideLabel, "fitToWideLabel"); this.fitToWideLabel.Name = "fitToWideLabel"; // // adjustToRadioButton // resources.ApplyResources(this.adjustToRadioButton, "adjustToRadioButton"); this.adjustToRadioButton.Name = "adjustToRadioButton"; // // fitToPagesTallInput // resources.ApplyResources(this.fitToPagesTallInput, "fitToPagesTallInput"); this.fitToPagesTallInput.Maximum = new decimal(new int[] { 20, 0, 0, 0}); this.fitToPagesTallInput.Minimum = new decimal(new int[] { 1, 0, 0, 0}); this.fitToPagesTallInput.Name = "fitToPagesTallInput"; this.fitToPagesTallInput.Value = new decimal(new int[] { 1, 0, 0, 0}); this.fitToPagesTallInput.ValueChanged += new System.EventHandler(this.fitToInputs_ValueChanged); // // fitToPagesWideInput // resources.ApplyResources(this.fitToPagesWideInput, "fitToPagesWideInput"); this.fitToPagesWideInput.Maximum = new decimal(new int[] { 20, 0, 0, 0}); this.fitToPagesWideInput.Minimum = new decimal(new int[] { 1, 0, 0, 0}); this.fitToPagesWideInput.Name = "fitToPagesWideInput"; this.fitToPagesWideInput.Value = new decimal(new int[] { 1, 0, 0, 0}); this.fitToPagesWideInput.ValueChanged += new System.EventHandler(this.fitToInputs_ValueChanged); // // adjustToScaleInput // resources.ApplyResources(this.adjustToScaleInput, "adjustToScaleInput"); this.adjustToScaleInput.Maximum = new decimal(new int[] { 400, 0, 0, 0}); this.adjustToScaleInput.Minimum = new decimal(new int[] { 10, 0, 0, 0}); this.adjustToScaleInput.Name = "adjustToScaleInput"; this.adjustToScaleInput.Value = new decimal(new int[] { 100, 0, 0, 0}); this.adjustToScaleInput.ValueChanged += new System.EventHandler(this.adjustToInput_ValueChanged); // // fitToRadioButton // resources.ApplyResources(this.fitToRadioButton, "fitToRadioButton"); this.fitToRadioButton.Name = "fitToRadioButton"; // // orientationGroup // resources.ApplyResources(this.orientationGroup, "orientationGroup"); this.orientationGroup.Controls.Add(this.orientationTableLayoutPanel); this.orientationGroup.Name = "orientationGroup"; this.orientationGroup.TabStop = false; // // orientationTableLayoutPanel // resources.ApplyResources(this.orientationTableLayoutPanel, "orientationTableLayoutPanel"); this.orientationTableLayoutPanel.Controls.Add(this.landscapeRadioButton, 3, 0); this.orientationTableLayoutPanel.Controls.Add(this.landscapePicture, 2, 0); this.orientationTableLayoutPanel.Controls.Add(this.portraitRadioButton, 1, 0); this.orientationTableLayoutPanel.Controls.Add(this.portraitPicture, 0, 0); this.orientationTableLayoutPanel.Name = "orientationTableLayoutPanel"; // // landscapeRadioButton // resources.ApplyResources(this.landscapeRadioButton, "landscapeRadioButton"); this.landscapeRadioButton.Name = "landscapeRadioButton"; this.landscapeRadioButton.CheckedChanged += new System.EventHandler(this.landscapeRadioButton_CheckedChanged); // // landscapePicture // resources.ApplyResources(this.landscapePicture, "landscapePicture"); this.landscapePicture.Name = "landscapePicture"; this.landscapePicture.TabStop = false; // // portraitRadioButton // resources.ApplyResources(this.portraitRadioButton, "portraitRadioButton"); this.portraitRadioButton.Name = "portraitRadioButton"; this.portraitRadioButton.CheckedChanged += new System.EventHandler(this.portraitRadioButton_CheckedChanged); // // portraitPicture // resources.ApplyResources(this.portraitPicture, "portraitPicture"); this.portraitPicture.Name = "portraitPicture"; this.portraitPicture.TabStop = false; // // paperSettingsGroup // resources.ApplyResources(this.paperSettingsGroup, "paperSettingsGroup"); this.paperSettingsGroup.Controls.Add(this.paperTableLayoutPanel); this.paperSettingsGroup.Name = "paperSettingsGroup"; this.paperSettingsGroup.TabStop = false; // // paperTableLayoutPanel // resources.ApplyResources(this.paperTableLayoutPanel, "paperTableLayoutPanel"); this.paperTableLayoutPanel.Controls.Add(this.paperSourceComboBox, 1, 1); this.paperTableLayoutPanel.Controls.Add(this.paperSizeComboBox, 1, 0); this.paperTableLayoutPanel.Controls.Add(this.paperSizeLabel, 0, 0); this.paperTableLayoutPanel.Controls.Add(this.paperSourceLabel, 0, 1); this.paperTableLayoutPanel.Name = "paperTableLayoutPanel"; // // paperSourceComboBox // resources.ApplyResources(this.paperSourceComboBox, "paperSourceComboBox"); this.paperSourceComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.paperSourceComboBox.FormattingEnabled = true; this.paperSourceComboBox.Name = "paperSourceComboBox"; // // paperSizeComboBox // resources.ApplyResources(this.paperSizeComboBox, "paperSizeComboBox"); this.paperSizeComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.paperSizeComboBox.FormattingEnabled = true; this.paperSizeComboBox.Name = "paperSizeComboBox"; this.paperSizeComboBox.SelectedIndexChanged += new System.EventHandler(this.paperSizeComboBox_SelectedIndexChanged); // // paperSizeLabel // resources.ApplyResources(this.paperSizeLabel, "paperSizeLabel"); this.paperSizeLabel.Name = "paperSizeLabel"; // // paperSourceLabel // resources.ApplyResources(this.paperSourceLabel, "paperSourceLabel"); this.paperSourceLabel.Name = "paperSourceLabel"; // // headerFooterTab // this.headerFooterTab.Controls.Add(this.footerGroup); this.headerFooterTab.Controls.Add(this.headerGroup); resources.ApplyResources(this.headerFooterTab, "headerFooterTab"); this.headerFooterTab.Name = "headerFooterTab"; // // footerGroup // resources.ApplyResources(this.footerGroup, "footerGroup"); this.footerGroup.Controls.Add(this.footerTableLayoutPanel); this.footerGroup.Controls.Add(this.customFooterText); this.footerGroup.Controls.Add(this.customFooterLabel); this.footerGroup.Name = "footerGroup"; this.footerGroup.TabStop = false; // // footerTableLayoutPanel // resources.ApplyResources(this.footerTableLayoutPanel, "footerTableLayoutPanel"); this.footerTableLayoutPanel.Controls.Add(this.footerTextLabel, 0, 0); this.footerTableLayoutPanel.Controls.Add(this.footerAlignmentLabel, 0, 1); this.footerTableLayoutPanel.Controls.Add(this.footerMarginUnitsLabel, 2, 2); this.footerTableLayoutPanel.Controls.Add(this.footerMarginLabel, 0, 2); this.footerTableLayoutPanel.Controls.Add(this.footerMarginInput, 1, 2); this.footerTableLayoutPanel.Controls.Add(this.footerTextComboBox, 1, 0); this.footerTableLayoutPanel.Controls.Add(this.footerAlignmentComboBox, 1, 1); this.footerTableLayoutPanel.Name = "footerTableLayoutPanel"; // // footerTextLabel // resources.ApplyResources(this.footerTextLabel, "footerTextLabel"); this.footerTextLabel.Name = "footerTextLabel"; // // footerAlignmentLabel // resources.ApplyResources(this.footerAlignmentLabel, "footerAlignmentLabel"); this.footerAlignmentLabel.Name = "footerAlignmentLabel"; // // footerMarginUnitsLabel // resources.ApplyResources(this.footerMarginUnitsLabel, "footerMarginUnitsLabel"); this.footerMarginUnitsLabel.Name = "footerMarginUnitsLabel"; // // footerMarginLabel // resources.ApplyResources(this.footerMarginLabel, "footerMarginLabel"); this.footerMarginLabel.Name = "footerMarginLabel"; // // footerMarginInput // resources.ApplyResources(this.footerMarginInput, "footerMarginInput"); this.footerMarginInput.DecimalPlaces = 2; this.footerMarginInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.footerMarginInput.Name = "footerMarginInput"; this.footerMarginInput.Value = new decimal(new int[] { 1, 0, 0, 0}); this.footerMarginInput.Validating += new System.ComponentModel.CancelEventHandler(this.footerMarginInput_Validating); // // footerTextComboBox // resources.ApplyResources(this.footerTextComboBox, "footerTextComboBox"); this.footerTableLayoutPanel.SetColumnSpan(this.footerTextComboBox, 2); this.footerTextComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.footerTextComboBox.FormattingEnabled = true; this.footerTextComboBox.Name = "footerTextComboBox"; this.footerTextComboBox.SelectedIndexChanged += new System.EventHandler(this.footerTextComboBox_SelectedIndexChanged); // // footerAlignmentComboBox // resources.ApplyResources(this.footerAlignmentComboBox, "footerAlignmentComboBox"); this.footerTableLayoutPanel.SetColumnSpan(this.footerAlignmentComboBox, 2); this.footerAlignmentComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.footerAlignmentComboBox.FormattingEnabled = true; this.footerAlignmentComboBox.Name = "footerAlignmentComboBox"; // // customFooterText // resources.ApplyResources(this.customFooterText, "customFooterText"); this.customFooterText.Name = "customFooterText"; // // customFooterLabel // resources.ApplyResources(this.customFooterLabel, "customFooterLabel"); this.customFooterLabel.Name = "customFooterLabel"; // // headerGroup // resources.ApplyResources(this.headerGroup, "headerGroup"); this.headerGroup.Controls.Add(this.headerTableLayoutPanel); this.headerGroup.Controls.Add(this.customHeaderText); this.headerGroup.Controls.Add(this.customHeaderLabel); this.headerGroup.Name = "headerGroup"; this.headerGroup.TabStop = false; // // headerTableLayoutPanel // resources.ApplyResources(this.headerTableLayoutPanel, "headerTableLayoutPanel"); this.headerTableLayoutPanel.Controls.Add(this.headerTextLabel, 0, 0); this.headerTableLayoutPanel.Controls.Add(this.headerAlignmentLabel, 0, 1); this.headerTableLayoutPanel.Controls.Add(this.headerMarginUnitsLabel, 2, 2); this.headerTableLayoutPanel.Controls.Add(this.headerMarginLabel, 0, 2); this.headerTableLayoutPanel.Controls.Add(this.headerMarginInput, 1, 2); this.headerTableLayoutPanel.Controls.Add(this.headerTextComboBox, 1, 0); this.headerTableLayoutPanel.Controls.Add(this.headerAlignmentComboBox, 1, 1); this.headerTableLayoutPanel.Name = "headerTableLayoutPanel"; // // headerTextLabel // resources.ApplyResources(this.headerTextLabel, "headerTextLabel"); this.headerTextLabel.Name = "headerTextLabel"; // // headerAlignmentLabel // resources.ApplyResources(this.headerAlignmentLabel, "headerAlignmentLabel"); this.headerAlignmentLabel.Cursor = System.Windows.Forms.Cursors.Arrow; this.headerAlignmentLabel.Name = "headerAlignmentLabel"; // // headerMarginUnitsLabel // resources.ApplyResources(this.headerMarginUnitsLabel, "headerMarginUnitsLabel"); this.headerMarginUnitsLabel.Name = "headerMarginUnitsLabel"; // // headerMarginLabel // resources.ApplyResources(this.headerMarginLabel, "headerMarginLabel"); this.headerMarginLabel.Name = "headerMarginLabel"; // // headerMarginInput // resources.ApplyResources(this.headerMarginInput, "headerMarginInput"); this.headerMarginInput.DecimalPlaces = 2; this.headerMarginInput.Increment = new decimal(new int[] { 1, 0, 0, 131072}); this.headerMarginInput.Name = "headerMarginInput"; this.headerMarginInput.Value = new decimal(new int[] { 1, 0, 0, 0}); this.headerMarginInput.Validating += new System.ComponentModel.CancelEventHandler(this.headerMarginInput_Validating); // // headerTextComboBox // resources.ApplyResources(this.headerTextComboBox, "headerTextComboBox"); this.headerTableLayoutPanel.SetColumnSpan(this.headerTextComboBox, 2); this.headerTextComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.headerTextComboBox.FormattingEnabled = true; this.headerTextComboBox.Name = "headerTextComboBox"; this.headerTextComboBox.SelectedIndexChanged += new System.EventHandler(this.headerTextComboBox_SelectedIndexChanged); // // headerAlignmentComboBox // resources.ApplyResources(this.headerAlignmentComboBox, "headerAlignmentComboBox"); this.headerTableLayoutPanel.SetColumnSpan(this.headerAlignmentComboBox, 2); this.headerAlignmentComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.headerAlignmentComboBox.FormattingEnabled = true; this.headerAlignmentComboBox.Name = "headerAlignmentComboBox"; // // customHeaderText // resources.ApplyResources(this.customHeaderText, "customHeaderText"); this.customHeaderText.Name = "customHeaderText"; // // customHeaderLabel // resources.ApplyResources(this.customHeaderLabel, "customHeaderLabel"); this.customHeaderLabel.Name = "customHeaderLabel"; // // OKButton // resources.ApplyResources(this.OKButton, "OKButton"); this.OKButton.DialogResult = System.Windows.Forms.DialogResult.OK; this.OKButton.Name = "OKButton"; this.OKButton.Click += new System.EventHandler(this.OKButton_Click); // // cancelButton // resources.ApplyResources(this.cancelButton, "cancelButton"); this.cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; this.cancelButton.Name = "cancelButton"; // // printerButton // resources.ApplyResources(this.printerButton, "printerButton"); this.printerButton.Name = "printerButton"; this.printerButton.Click += new System.EventHandler(this.printerButton_Click); // // okCancelTableLayoutPanel // resources.ApplyResources(this.okCancelTableLayoutPanel, "okCancelTableLayoutPanel"); this.okCancelTableLayoutPanel.Controls.Add(this.OKButton, 0, 0); this.okCancelTableLayoutPanel.Controls.Add(this.cancelButton, 1, 0); this.okCancelTableLayoutPanel.Controls.Add(this.printerButton, 2, 0); this.okCancelTableLayoutPanel.Name = "okCancelTableLayoutPanel"; // // WorkflowPageSetupDialog // this.AcceptButton = this.OKButton; resources.ApplyResources(this, "$this"); this.CancelButton = this.cancelButton; this.Controls.Add(this.okCancelTableLayoutPanel); this.Controls.Add(this.tabs); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; this.HelpButton = true; this.MaximizeBox = false; this.MinimizeBox = false; this.Name = "WorkflowPageSetupDialog"; this.ShowInTaskbar = false; this.HelpButtonClicked += new System.ComponentModel.CancelEventHandler(this.WorkflowPageSetupDialog_HelpButtonClicked); this.tabs.ResumeLayout(false); this.pageSettingsTab.ResumeLayout(false); this.centerGroup.ResumeLayout(false); this.centerTableLayoutPanel.ResumeLayout(false); this.centerTableLayoutPanel.PerformLayout(); this.marginsGroup.ResumeLayout(false); this.marginsTableLayoutPanel.ResumeLayout(false); this.marginsTableLayoutPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.marginsRightInput)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsBottomInput)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsTopInput)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.marginsLeftInput)).EndInit(); this.scalingGroup.ResumeLayout(false); this.scalingTableLayoutPanel.ResumeLayout(false); this.scalingTableLayoutPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.fitToPagesTallInput)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.fitToPagesWideInput)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.adjustToScaleInput)).EndInit(); this.orientationGroup.ResumeLayout(false); this.orientationTableLayoutPanel.ResumeLayout(false); this.orientationTableLayoutPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.landscapePicture)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.portraitPicture)).EndInit(); this.paperSettingsGroup.ResumeLayout(false); this.paperTableLayoutPanel.ResumeLayout(false); this.paperTableLayoutPanel.PerformLayout(); this.headerFooterTab.ResumeLayout(false); this.footerGroup.ResumeLayout(false); this.footerGroup.PerformLayout(); this.footerTableLayoutPanel.ResumeLayout(false); this.footerTableLayoutPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.footerMarginInput)).EndInit(); this.headerGroup.ResumeLayout(false); this.headerGroup.PerformLayout(); this.headerTableLayoutPanel.ResumeLayout(false); this.headerTableLayoutPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.headerMarginInput)).EndInit(); this.okCancelTableLayoutPanel.ResumeLayout(false); this.okCancelTableLayoutPanel.PerformLayout(); this.ResumeLayout(false); this.PerformLayout(); } #endregion #region Events private void OKButton_Click(object sender, System.EventArgs e) { //serialize state of the dialog into the pageSetupData object Margins margins = GetMarginsFromUI(); //scaling this.printDocument.PageSetupData.AdjustToScaleFactor = this.adjustToRadioButton.Checked; this.printDocument.PageSetupData.ScaleFactor = (int)this.adjustToScaleInput.Value; this.printDocument.PageSetupData.PagesWide = (int)this.fitToPagesWideInput.Value; this.printDocument.PageSetupData.PagesTall = (int)this.fitToPagesTallInput.Value; //Set the orientation this.printDocument.PageSetupData.Landscape = this.landscapeRadioButton.Checked; this.printDocument.PageSetupData.Margins = margins; //centering this.printDocument.PageSetupData.CenterHorizontally = this.CenterHorizontallyCheckBox.Checked; this.printDocument.PageSetupData.CenterVertically = this.CenterVerticallyCheckBox.Checked; //header inputs if(this.headerTextComboBox.SelectedIndex == 0) this.printDocument.PageSetupData.HeaderTemplate = string.Empty; else if(!this.headerTextComboBox.Text.Equals(this.headerFooterCustom)) this.printDocument.PageSetupData.HeaderTemplate = this.headerTextComboBox.Text; else this.printDocument.PageSetupData.HeaderTemplate = this.customHeaderText.Text; this.printDocument.PageSetupData.HeaderCustom = this.headerCustom; this.printDocument.PageSetupData.HeaderAlignment = (HorizontalAlignment)this.headerAlignmentComboBox.SelectedItem; this.printDocument.PageSetupData.HeaderMargin = UIUnitToPrinterUnit(this.headerMarginInput.Value); //footer inputs if(this.footerTextComboBox.SelectedIndex == 0) this.printDocument.PageSetupData.FooterTemplate = string.Empty; else if(!this.footerTextComboBox.Text.Equals(this.headerFooterCustom)) this.printDocument.PageSetupData.FooterTemplate = this.footerTextComboBox.Text; else this.printDocument.PageSetupData.FooterTemplate = this.customFooterText.Text; this.printDocument.PageSetupData.FooterCustom = this.footerCustom; this.printDocument.PageSetupData.FooterAlignment = (HorizontalAlignment)this.footerAlignmentComboBox.SelectedItem; this.printDocument.PageSetupData.FooterMargin = UIUnitToPrinterUnit(this.footerMarginInput.Value); // Set the paper size based upon the selection in the combo box. if (PrinterSettings.InstalledPrinters.Count > 0) { if (this.paperSizeComboBox.SelectedItem != null) this.printDocument.DefaultPageSettings.PaperSize = (PaperSize)this.paperSizeComboBox.SelectedItem; // Set the paper source based upon the selection in the combo box. if (this.paperSourceComboBox.SelectedItem != null) this.printDocument.DefaultPageSettings.PaperSource = (PaperSource)this.paperSourceComboBox.SelectedItem; this.printDocument.DefaultPageSettings.Landscape = this.printDocument.PageSetupData.Landscape; this.printDocument.DefaultPageSettings.Margins = margins; //Make sure that printer setting are changed this.printDocument.PrinterSettings.DefaultPageSettings.PaperSize = this.printDocument.DefaultPageSettings.PaperSize; this.printDocument.PrinterSettings.DefaultPageSettings.PaperSource = this.printDocument.DefaultPageSettings.PaperSource; this.printDocument.PrinterSettings.DefaultPageSettings.Landscape = this.printDocument.PageSetupData.Landscape; this.printDocument.PrinterSettings.DefaultPageSettings.Margins = margins; } this.printDocument.PageSetupData.StorePropertiesToRegistry(); DialogResult = DialogResult.OK; } private void printerButton_Click(object sender, System.EventArgs e) { PrintDialog printDialog = new System.Windows.Forms.PrintDialog(); printDialog.AllowPrintToFile = false; printDialog.Document = this.printDocument; try { if (DialogResult.OK == printDialog.ShowDialog()) { this.printDocument.PrinterSettings = printDialog.PrinterSettings; this.printDocument.DefaultPageSettings = printDialog.Document.DefaultPageSettings; if (this.printDocument.DefaultPageSettings.Landscape) this.landscapeRadioButton.Checked = true; else this.portraitRadioButton.Checked = true; InitializePaperInformation(); this.printDocument.Print(); } else { //todo: copy updated settings from the dialog to the print doc //in the worst case it's a no-op, in case user clicked apply/cancel it's the only way to //update the settings (see Winoe#3129 and VSWhidbey#403124 for more details) } } catch(Exception exception) { string errorString = DR.GetString(DR.SelectedPrinterIsInvalidErrorMessage); errorString += "\n" + exception.Message; DesignerHelpers.ShowError(this.serviceProvider, errorString); } } private void Margins_Validating(object sender, System.ComponentModel.CancelEventArgs e) { Margins margins = GetMarginsFromUI(); //get the current paper size Size physicalPageSize; PaperSize paperSize = this.paperSizeComboBox.SelectedItem as PaperSize; if(null != paperSize) physicalPageSize = new Size(paperSize.Width, paperSize.Height); else physicalPageSize = this.printDocument.DefaultPageSettings.Bounds.Size; //check the constrains int horizontalMarginsSum = margins.Left + margins.Right; int verticalMarginsSum = margins.Top + margins.Bottom; if (horizontalMarginsSum < physicalPageSize.Width && verticalMarginsSum < physicalPageSize.Height) return;//we are good //cancelling the change - constrains are not satisfied string errorString = DR.GetString(DR.EnteredMarginsAreNotValidErrorMessage); DesignerHelpers.ShowError(this.serviceProvider, errorString); e.Cancel = true; } private void headerTextComboBox_SelectedIndexChanged(object sender, System.EventArgs e) { this.headerCustom = this.headerTextComboBox.Text.Equals(this.headerFooterCustom); this.customHeaderText.Enabled = this.headerCustom; if (!this.headerCustom) this.customHeaderText.Text = this.headerTextComboBox.Text; } private void footerTextComboBox_SelectedIndexChanged(object sender, System.EventArgs e) { this.footerCustom = this.footerTextComboBox.Text.Equals(this.headerFooterCustom); this.customFooterText.Enabled = this.footerCustom; if (!this.footerCustom) this.customFooterText.Text = this.footerTextComboBox.Text; } private void paperSizeComboBox_SelectedIndexChanged(object sender, System.EventArgs e) { UpdateHeaderFooterMarginLimit(); } private void landscapeRadioButton_CheckedChanged(object sender, System.EventArgs e) { UpdateHeaderFooterMarginLimit(); } private void portraitRadioButton_CheckedChanged(object sender, System.EventArgs e) { UpdateHeaderFooterMarginLimit(); } private void UpdateHeaderFooterMarginLimit() { PaperSize paperSize = this.paperSizeComboBox.SelectedItem as PaperSize; if (paperSize != null) this.footerMarginInput.Maximum = this.headerMarginInput.Maximum = PrinterUnitToUIUnit(this.landscapeRadioButton.Checked ? paperSize.Width : paperSize.Height); } private void headerMarginInput_Validating(object sender, System.ComponentModel.CancelEventArgs e) { } private void footerMarginInput_Validating(object sender, System.ComponentModel.CancelEventArgs e) { } private void adjustToInput_ValueChanged(object sender, System.EventArgs e) { this.adjustToRadioButton.Checked = true; } private void fitToInputs_ValueChanged(object sender, System.EventArgs e) { this.fitToRadioButton.Checked = true; } #endregion #region Helpers private void InitializePaperInformation() { PrinterSettings.PaperSizeCollection paperSizeCollection = this.printDocument.PrinterSettings.PaperSizes; PrinterSettings.PaperSourceCollection paperSourceCollection = this.printDocument.PrinterSettings.PaperSources; this.paperSizeComboBox.Items.Clear(); this.paperSizeComboBox.DisplayMember = "PaperName"; foreach (PaperSize paperSize in paperSizeCollection) { if (paperSize.PaperName != null && paperSize.PaperName.Length > 0) { this.paperSizeComboBox.Items.Add(paperSize); if (null == this.paperSizeComboBox.SelectedItem && this.printDocument.DefaultPageSettings.PaperSize.Kind == paperSize.Kind && this.printDocument.DefaultPageSettings.PaperSize.Width == paperSize.Width && this.printDocument.DefaultPageSettings.PaperSize.Height == paperSize.Height) { this.paperSizeComboBox.SelectedItem = paperSize; this.printDocument.DefaultPageSettings.PaperSize = paperSize; } } } if (null == this.paperSizeComboBox.SelectedItem) { PaperKind paperKind = this.printDocument.DefaultPageSettings.PaperSize.Kind; this.printDocument.DefaultPageSettings = new PageSettings(this.printDocument.PrinterSettings); foreach (PaperSize paperSize in this.paperSizeComboBox.Items) { if (null == this.paperSizeComboBox.SelectedItem && paperKind == paperSize.Kind && this.printDocument.DefaultPageSettings.PaperSize.Width == paperSize.Width && this.printDocument.DefaultPageSettings.PaperSize.Height == paperSize.Height) { this.paperSizeComboBox.SelectedItem = paperSize; this.printDocument.DefaultPageSettings.PaperSize = paperSize; } } //We still did not find matching paper so not select first in the list if (null == this.paperSizeComboBox.SelectedItem && this.paperSizeComboBox.Items.Count > 0) { this.paperSizeComboBox.SelectedItem = this.paperSizeComboBox.Items[0] as PaperSize; this.printDocument.DefaultPageSettings.PaperSize = this.paperSizeComboBox.SelectedItem as PaperSize; } } ///////////////Select the appropriate paper source based on the pageSettings this.paperSourceComboBox.Items.Clear(); this.paperSourceComboBox.DisplayMember = "SourceName"; foreach (PaperSource paperSource in paperSourceCollection) { this.paperSourceComboBox.Items.Add(paperSource); if (null == this.paperSourceComboBox.SelectedItem && this.printDocument.DefaultPageSettings.PaperSource.Kind == paperSource.Kind && this.printDocument.DefaultPageSettings.PaperSource.SourceName == paperSource.SourceName) this.paperSourceComboBox.SelectedItem = paperSource; } if (null == this.paperSourceComboBox.SelectedItem && this.paperSourceComboBox.Items.Count > 0) { this.paperSourceComboBox.SelectedItem = this.paperSourceComboBox.Items[0] as PaperSource; this.printDocument.DefaultPageSettings.PaperSource = this.paperSourceComboBox.SelectedItem as PaperSource; } } // private void SetMarginsToUI(Margins margins) { this.marginsLeftInput.Value = PrinterUnitToUIUnit(margins.Left); this.marginsRightInput.Value = PrinterUnitToUIUnit(margins.Right); this.marginsTopInput.Value = PrinterUnitToUIUnit(margins.Top); this.marginsBottomInput.Value = PrinterUnitToUIUnit(margins.Bottom); } private Margins GetMarginsFromUI() { Margins margins = new Margins( UIUnitToPrinterUnit(this.marginsLeftInput.Value), UIUnitToPrinterUnit(this.marginsRightInput.Value), UIUnitToPrinterUnit(this.marginsTopInput.Value), UIUnitToPrinterUnit(this.marginsBottomInput.Value)); return margins; } private decimal PrinterUnitToUIUnit(int printerValue) { return Convert.ToDecimal((double)printerValue / 100.0d); //in 1/100 of inch } private int UIUnitToPrinterUnit(decimal uiValue) { return Convert.ToInt32((double)uiValue * 100.0d); //in 1/100 of inch } #endregion private void WorkflowPageSetupDialog_HelpButtonClicked(object sender, System.ComponentModel.CancelEventArgs e) { e.Cancel = true; GetHelp(); } protected override void OnHelpRequested(HelpEventArgs hlpevent) { hlpevent.Handled = true; GetHelp(); } private void GetHelp() { DesignerHelpers.ShowHelpFromKeyword(this.serviceProvider, typeof(WorkflowPageSetupDialog).FullName + ".UI"); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Vector.cs
- PermissionRequestEvidence.cs
- PtsContext.cs
- SiteMap.cs
- TreeNodeClickEventArgs.cs
- Variant.cs
- Membership.cs
- SvcMapFile.cs
- DataTable.cs
- TimelineGroup.cs
- ImageDrawing.cs
- DefaultMergeHelper.cs
- RenderingBiasValidation.cs
- GridViewRowCollection.cs
- HttpCookiesSection.cs
- Int16Animation.cs
- QueueProcessor.cs
- WebBrowserNavigatingEventHandler.cs
- StringHandle.cs
- ListViewItemSelectionChangedEvent.cs
- PrintSchema.cs
- RelationshipSet.cs
- Vector3DValueSerializer.cs
- Rotation3D.cs
- DecoderExceptionFallback.cs
- TextBoxAutoCompleteSourceConverter.cs
- XmlDataSource.cs
- MenuStrip.cs
- OutputCacheProfile.cs
- XPathParser.cs
- BindingList.cs
- ProcessHost.cs
- HtmlTableRow.cs
- ListViewTableRow.cs
- SafeViewOfFileHandle.cs
- WebPartZoneCollection.cs
- BamlRecordHelper.cs
- OleTxTransactionInfo.cs
- DSASignatureFormatter.cs
- OnOperation.cs
- ColumnPropertiesGroup.cs
- WindowHelperService.cs
- ClientScriptManager.cs
- CodeEventReferenceExpression.cs
- SiteMapNodeItem.cs
- UnionExpr.cs
- DefaultValidator.cs
- TableColumn.cs
- Roles.cs
- UserCancellationException.cs
- SystemInfo.cs
- SplitContainer.cs
- WebScriptMetadataMessageEncoderFactory.cs
- CodeNamespaceImportCollection.cs
- RSAProtectedConfigurationProvider.cs
- DataTableTypeConverter.cs
- mactripleDES.cs
- returneventsaver.cs
- DrawListViewSubItemEventArgs.cs
- ModelTreeEnumerator.cs
- HierarchicalDataBoundControl.cs
- webproxy.cs
- TraceSource.cs
- WindowShowOrOpenTracker.cs
- HostingEnvironment.cs
- ConversionValidationRule.cs
- ClientRuntimeConfig.cs
- WorkerRequest.cs
- ContainerUtilities.cs
- ContainerParaClient.cs
- View.cs
- ByteAnimationUsingKeyFrames.cs
- BindingExpressionBase.cs
- DesignerLoader.cs
- StringInfo.cs
- ZipArchive.cs
- Thread.cs
- SQLSingle.cs
- ProtocolsConfigurationEntry.cs
- XmlSchemaCollection.cs
- SiteMapPath.cs
- EventPrivateKey.cs
- InvalidComObjectException.cs
- XmlAnyAttributeAttribute.cs
- TreeViewImageKeyConverter.cs
- OdbcEnvironmentHandle.cs
- ProxyWebPartManagerDesigner.cs
- AssemblyLoader.cs
- PartialCachingAttribute.cs
- XmlValidatingReaderImpl.cs
- ISCIIEncoding.cs
- MsmqMessageProperty.cs
- CodeGeneratorAttribute.cs
- RuntimeConfigurationRecord.cs
- StrokeDescriptor.cs
- ConfigXmlComment.cs
- RouteValueDictionary.cs
- EntityConnectionStringBuilderItem.cs
- EnterpriseServicesHelper.cs
- ReadOnlyObservableCollection.cs