C#Winform DEV控件GridControl(gridview)打印表格并设置页眉页脚文字

      #region 打印
        //打印函数
        private void printInfo()
        {
            try
            {
                GridControl gc = gridControl1; //绑定表格组件
                GridView gv = gridView1;
                //设置打印出来的页面中表格自适应列宽(解决自动分页的问题)
                gv.OptionsPrint.AutoWidth = true;

                //实例化打印组件
                PrintingSystem ps = new PrintingSystem();
                PrintableComponentLink link = new PrintableComponentLink(ps);
                link.PaperKind = System.Drawing.Printing.PaperKind.A4;
                link.CreateMarginalHeaderArea += Link_CreateMarginalHeaderArea;
                link.Component = gc;
                link.Landscape = true;
                PageHeaderFooter phf = link.PageHeaderFooter as PageHeaderFooter;

                //页眉文字
                string strHeader = lbCPWLH.Text + "     " + lbXSDDH.Text + "     " + lbSCDDH.Text + "     " + lbPZ.Text + "     " + lbMBSL.Text;
                //页脚文字
                string strFooter = "";
                //打印时间
                string strPrintDate = String.Format("打印时间: {0:g}", DateTime.Now);

                //页眉
                phf.Header.Content.Clear();
                phf.Header.Content.AddRange(new string[] { strHeader, "", "" });
                phf.Header.Font = new System.Drawing.Font("宋体", 9, System.Drawing.FontStyle.Regular);
                phf.Header.LineAlignment = BrickAlignment.Far;
                //页脚
                phf.Footer.Content.Clear();
                phf.Footer.Content.AddRange(new string[] { strFooter, "", "" });
                phf.Footer.Font = new System.Drawing.Font("宋体", 9, System.Drawing.FontStyle.Regular);

                link.CreateDocument();
                link.ShowPreview();
            }
            catch
            {
                MessageBox.Show("打印时出错!", "REPORTSINGLECONFIRM printInfo");
            }
        }

        //设置报表标题
        private static void Link_CreateMarginalHeaderArea(object sender, CreateAreaEventArgs e)
        {
            //报表标题
            string title = "单 款 数 据 流 转 表";
            PageInfoBrick brick = e.Graph.DrawPageInfo(PageInfo.None, title, Color.Black,
            new RectangleF(120, 0, 230, 30), DevExpress.XtraPrinting.BorderSide.None);//RectangleF这里的第三个参数决定了标题框的大小,如果标题字数增多或减少,要相应的改掉这个参数,否则会导致标题显示不全和无法居中
            brick.LineAlignment = BrickAlignment.Center;
            brick.Alignment = BrickAlignment.Center;
            brick.AutoWidth = false;
            brick.Font = new Font("黑体", 15f, FontStyle.Bold);
        }
        #endregion

 

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值