示例#1
0
        private void GetPrintOptions(ReportDocument report, XmlWriter writer)
        {
            writer.WriteStartElement("PrintOptions");

            writer.WriteAttributeString("PageContentHeight", report.PrintOptions.PageContentHeight.ToString(CultureInfo.InvariantCulture));
            writer.WriteAttributeString("PageContentWidth", report.PrintOptions.PageContentWidth.ToString(CultureInfo.InvariantCulture));
            writer.WriteAttributeString("PaperOrientation", report.PrintOptions.PaperOrientation.ToString());
            writer.WriteAttributeString("PaperSize", report.PrintOptions.PaperSize.ToString());
            writer.WriteAttributeString("PaperSource", report.PrintOptions.PaperSource.ToString());
            writer.WriteAttributeString("PrinterDuplex", report.PrintOptions.PrinterDuplex.ToString());
            writer.WriteAttributeString("PrinterName", report.PrintOptions.PrinterName);

            writer.WriteStartElement("PageMargins");

            writer.WriteAttributeString("bottomMargin", report.PrintOptions.PageMargins.bottomMargin.ToString(CultureInfo.InvariantCulture));
            writer.WriteAttributeString("leftMargin", report.PrintOptions.PageMargins.leftMargin.ToString(CultureInfo.InvariantCulture));
            writer.WriteAttributeString("rightMargin", report.PrintOptions.PageMargins.rightMargin.ToString(CultureInfo.InvariantCulture));
            writer.WriteAttributeString("topMargin", report.PrintOptions.PageMargins.topMargin.ToString(CultureInfo.InvariantCulture));

            writer.WriteEndElement();

            CRReportDefModel.PrintOptions rdmPrintOptions = GetRASRDMPrintOptionsObject(report.Name, report);
            if (rdmPrintOptions != null)
            {
                GetPageMarginConditionFormulas(rdmPrintOptions, writer);
            }

            writer.WriteEndElement();
        }
示例#2
0
        private void GetPageMarginConditionFormulas(CRReportDefModel.PrintOptions po, XmlWriter writer)
        {
            writer.WriteStartElement("PageMarginConditionFormulas");
            var cfs = Enum.GetValues(typeof(CRReportDefModel.CrPageMarginConditionFormulaTypeEnum));

            foreach (CRReportDefModel.CrPageMarginConditionFormulaTypeEnum cf in cfs)
            {
                var formula = po.PageMargins.PageMarginConditionFormulas[cf];
                if (!String.IsNullOrEmpty(formula.Text))
                {
                    writer.WriteAttributeString(GetShortEnumName(cf), formula.Text);
                }
            }
            writer.WriteEndElement();
        }