/// <summary> /// Handles the SelectedIndexChanged event of PageSizeComboBox object. /// </summary> private void pageSizeComboBox_SelectedIndexChanged(object sender, EventArgs e) { if (PageLayoutSettings == null) { return; } if (pageSizeComboBox.SelectedItem.ToString() != "Undefined") { ImageSize size; // if custom page size selected if (pageSizeComboBox.SelectedItem.ToString() == "Custom") { pageWidthNumericUpDown.Enabled = true; pageHeightNumericUpDown.Enabled = true; // if page size already set if (PageLayoutSettings.PageSize != null) { // create custom page size with current values size = ImageSize.FromInches( PageLayoutSettings.PageSize.WidthInInch, PageLayoutSettings.PageSize.HeightInInch, PageLayoutSettings.PageSize.Resolution); } else { // create custom page size with default values size = ImageSize.FromMillimeters(100, 100, Resolution.ScreenResolution); } } else { // get page size from paper kind size = ImageSize.FromPaperKind((PaperSizeKind)pageSizeComboBox.SelectedItem); pageWidthNumericUpDown.Enabled = false; pageHeightNumericUpDown.Enabled = false; } PageLayoutSettings.PageSize = size; // update page width and height containers pageWidthNumericUpDown.Value = (int)Math.Round(UnitOfMeasureConverter.ConvertToMillimeters(size.WidthInInch, UnitOfMeasure.Inches)); pageHeightNumericUpDown.Value = (int)Math.Round(UnitOfMeasureConverter.ConvertToMillimeters(size.HeightInInch, UnitOfMeasure.Inches)); } else { PageLayoutSettings.PageSize = null; pageWidthNumericUpDown.Enabled = false; pageHeightNumericUpDown.Enabled = false; } }