码迷,mamicode.com
首页 > Windows程序 > 详细

DevExpress Winform 通用控件打印方法(允许可自定义边距) z

时间:2017-01-12 11:29:22      阅读:42      评论:0      收藏:0      [点我收藏+]

标签:文档   created   preview   name   page   []   class   ribbon   layout   

DevExpress Winform 通用控件打印方法,包括gridcontrol,treelist,pivotGridControl,ChartControl,LayoutControl...(所有支持打印功能的控件) ,同时允许用户自定义报表标题,报表纸张类型(A4,A3...),报表边距

/// <summary>

        /// 打印功能

        /// </summary>

        /// <param name="panel">打印控件</param>

        /// <param name="title">标题</param>

        /// <param name="pageSize">纸张类型</param>

        /// <param name="margins">边距</param>

        protected virtual void Print(IPrintable panel, string title = null, PaperKind pageSize = PaperKind.A4, System.Drawing.Printing.Margins margins = null)

        {

            PrintingSystem ps = new PrintingSystem();

            CompositeLink link = new CompositeLink(ps);                       PrintableComponentLink printableLink = new PrintableComponentLink() { Component = panel };

            ps.Links.Add(link);

            link.Links.Add(printableLink);

            link.Landscape = true;//横向

            link.PaperKind = pageSize;//设置纸张大小

            if (margins == null)

                margins = new System.Drawing.Printing.Margins(10, 10, 50, 50);

            link.Margins = margins;

            //判断是否有标题,有则设置

            if (!string.IsNullOrEmpty(title))

            {



                PageHeaderFooter phf = link.PageHeaderFooter as PageHeaderFooter;

                phf.Header.Content.Clear();

                phf.Header.Content.AddRange(new string[] { "", title, "" });

                phf.Header.Font = new System.Drawing.Font("宋体", 14, System.Drawing.FontStyle.Bold);

                phf.Header.LineAlignment = BrickAlignment.Center;



                phf.Footer.Content.AddRange(new string[] { "", String.Format("打印时间: {0:g}", DateTime.Now), "" });

            }

            link.CreateDocument(); //建立文档

            ps.PreviewRibbonFormEx.Show();//进行预览 

        }

 

DevExpress Winform 通用控件打印方法(允许可自定义边距) z

标签:文档   created   preview   name   page   []   class   ribbon   layout   

(0)
(0)
   
举报
评论 一句话评论(0
0条  
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!