public static PageSettings DeepClonePageSettings(PageSettings pageSettings)
        {
            if (pageSettings == null)
            {
                return(null);
            }
            PageSettings pageSettings2 = (PageSettings)pageSettings.Clone();
            Margins      margins       = pageSettings.Margins;

            if (margins != null)
            {
                pageSettings2.Margins = (Margins)margins.Clone();
            }
            pageSettings2.PaperSize              = new PaperSize();
            pageSettings2.PaperSize.Height       = pageSettings.PaperSize.Height;
            pageSettings2.PaperSize.PaperName    = pageSettings.PaperSize.PaperName;
            pageSettings2.PaperSize.RawKind      = pageSettings.PaperSize.RawKind;
            pageSettings2.PaperSize.Width        = pageSettings.PaperSize.Width;
            pageSettings2.PaperSource            = new PaperSource();
            pageSettings2.PaperSource.RawKind    = pageSettings.PaperSource.RawKind;
            pageSettings2.PaperSource.SourceName = pageSettings.PaperSource.SourceName;
            pageSettings2.PrinterResolution      = new PrinterResolution();
            pageSettings2.PrinterResolution.Kind = pageSettings.PrinterResolution.Kind;
            pageSettings2.PrinterResolution.X    = pageSettings.PrinterResolution.X;
            pageSettings2.PrinterResolution.Y    = pageSettings.PrinterResolution.Y;
            if (pageSettings.PrinterSettings != null)
            {
                pageSettings2.PrinterSettings = pageSettings.PrinterSettings;
            }
            return(pageSettings2);
        }
Esempio n. 2
0
        public void Clone_Margin_Success()
        {
            Margins m     = new Margins(1, 2, 3, 4);
            Margins clone = (Margins)m.Clone();

            Assert.Equal(m, clone);
        }
Esempio n. 3
0
        /// <summary>
        /// 报表边距...
        /// </summary>
        /// <param name="mrg"></param>
        /// <returns></returns>
        public static Margins GetRegionMargins(Margins mrg)
        {
            Margins reg = mrg.Clone() as Margins;

            return(System.Globalization.RegionInfo.CurrentRegion.IsMetric ?
                   PrinterUnitConvert.Convert(reg, PrinterUnit.TenthsOfAMillimeter, PrinterUnit.Display) :
                   reg);
        }
Esempio n. 4
0
        public void Clone_Invoke_ReturnsExpected()
        {
            var     margins       = new Margins(1, 2, 3, 4);
            Margins clonedMargins = Assert.IsType <Margins>(margins.Clone());

            Assert.NotSame(margins, clonedMargins);
            Assert.Equal(1, clonedMargins.Left);
            Assert.Equal(2, clonedMargins.Right);
            Assert.Equal(3, clonedMargins.Top);
            Assert.Equal(4, clonedMargins.Bottom);
        }
Esempio n. 5
0
        public void CtorDefault()
        {
            Margins m = new Margins();

            Assert.AreEqual(100, m.Left, "Left");
            Assert.AreEqual(100, m.Top, "Top");
            Assert.AreEqual(100, m.Right, "Right");
            Assert.AreEqual(100, m.Bottom, "Bottom");
            Assert.AreEqual("[Margins Left=100 Right=100 Top=100 Bottom=100]", m.ToString(), "ToString");
            Margins clone = (Margins)m.Clone();

            Assert.AreEqual(m, clone, "clone");
            Assert.IsTrue(m == clone, "==");
            Assert.IsFalse(m != clone, "!=");
        }
Esempio n. 6
0
        private void a(object obj, EventArgs eventArgs)
        {
            Margins margins  = this.A.DefaultPageSettings.Margins;
            Margins margins2 = (Margins)margins.Clone();

            if (RegionInfo.CurrentRegion.IsMetric)
            {
                margins.Bottom = (int)((double)margins.Bottom * 2.54);
                margins.Top    = (int)((double)margins.Top * 2.54);
                margins.Left   = (int)((double)margins.Left * 2.54);
                margins.Right  = (int)((double)margins.Right * 2.54);
            }
            DialogResult dialogResult = this.A.ShowDialog();

            if (dialogResult == DialogResult.OK)
            {
                this.A.InvalidatePreview();
                return;
            }
            this.A.DefaultPageSettings.Margins = margins2;
        }