C#打印模板设计,E店宝打印模板设置,winfrom打印模板设计,DevExpress.XtraReports.UI.XRTable 表格代码生成。
一、打印效果
二、代码编辑
1 、table1 : table控件的Name;
2、label33 :label控件 实现绑定【外部平台单号】的控件;
3、label32:绑定【E店宝订单编号】(S开头的单号);
不同模板请以对应的控件Name属性值类 来替换以上3个值(table1,label33,label32)
string tid = label32.Text;//绑定E店宝【订单编号】(S开头的单号); string OutTid = label33.Text;//绑定E店宝【外部平台单号】 //获取报表对应的数据集DataSet; System.Data.DataSet ds=detailBand1.Report.DataSource as System.Data.DataSet; //如果获取到了DataSet,并且Table数据是1个以上,则取索引是第1个的Table,此Table定义为是明细数据。 ) { System.Data.DataTable dt=ds.Tables[]; //循环读取Table中的每一个数据行形成明细的拼接字符串。 System.Data.DataView dv = dt.DefaultView; dv.Sort = "报价总金额 DESC , 条形码 ASC "; //排序 System.Data.DataTable dt2 = dv.ToTable(); table1.Rows.Clear(); /***************************外部平台单号*********************************/ XRTableRow xrRowOutTid = new XRTableRow(); XRTableCell xrRowOutTidTile = new XRTableCell(); XRTableCell xrRowOutTidValue = new XRTableCell(); xrRowOutTidTile.Width = ; xrRowOutTidValue.Width = ; //-------------------------------------------- xrRowOutTidTile.CanGrow = true; xrRowOutTidTile.CanShrink = false; xrRowOutTidTile.Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrRowOutTidTile.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; //-------------------------------------------- xrRowOutTidValue.CanGrow = true; xrRowOutTidValue.CanShrink = false; xrRowOutTidValue.Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrRowOutTidValue.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; //-------------------------------------------- xrRowOutTidTile.Text = "订单号"; xrRowOutTidValue.Text =OutTid;//外部平台单号 //-------------------------------------------- xrRowOutTid.Cells.Add(xrRowOutTidTile); xrRowOutTid.Cells.Add(xrRowOutTidValue); table1.Rows.Add(xrRowOutTid); /***************************发货单号*********************************/ XRTableRow xrRowTid = new XRTableRow(); XRTableCell xrRowTidTitle = new XRTableCell(); XRTableCell xrRowTidValue = new XRTableCell(); xrRowTidTitle.Width = ; xrRowTidValue.Width = ; //-------------------------------------------- xrRowTidTitle.CanGrow = true; xrRowTidTitle.CanShrink = false; xrRowTidTitle.Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrRowTidTitle.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; //-------------------------------------------- xrRowTidValue.CanGrow = true; xrRowTidValue.CanShrink = false; xrRowTidValue.Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrRowTidValue.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; //-------------------------------------------- xrRowTidTitle.Text = "发货单号"; xrRowTidValue.Text =tid; //-------------------------------------------- xrRowTid.Cells.Add(xrRowTidTitle); xrRowTid.Cells.Add(xrRowTidValue); table1.Rows.Add(xrRowTid); /***************************列标题*********************************/ XRTableRow xrRowTitle = new XRTableRow(); XRTableCell xrRowTitleName = new XRTableCell();//产品名称 XRTableCell xrRowTitleHH = new XRTableCell();//货号 XRTableCell xrRowTitleBarCode = new XRTableCell();//"条码" XRTableCell xrRowTitleNum = new XRTableCell();//"数量" //----------------------------- xrRowTitleBarCode .CanGrow = true; xrRowTitleBarCode .CanShrink = false; xrRowTitleBarCode .Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrRowTitleBarCode .TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; //----------------------------- xrRowTitleHH.CanGrow = true; xrRowTitleHH.CanShrink = false; xrRowTitleHH.Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrRowTitleHH.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; //----------------------------- xrRowTitleName.CanGrow = true; xrRowTitleName.CanShrink = false; xrRowTitleName.Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrRowTitleName.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; xrRowTitleHH.Width = ; xrRowTitleName.Width = ; xrRowTitleNum.Width = ; xrRowTitleBarCode.Width = ; //----------------------------- xrRowTitleNum.CanGrow = true; xrRowTitleNum.CanShrink = false; xrRowTitleNum.Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrRowTitleNum.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; //----------------------------- xrRowTitleName.Text = "产品名称"; xrRowTitleHH.Text = "货号"; xrRowTitleBarCode.Text = "条码"; xrRowTitleNum.Text = "数量" ; //----------------------------- xrRowTitle.Cells.Add(xrRowTitleName);//"产品名称" xrRowTitle.Cells.Add(xrRowTitleHH);//"货号" xrRowTitle.Cells.Add(xrRowTitleBarCode); //产品条形码 xrRowTitle.Cells.Add(xrRowTitleNum);//数量 table1.Rows.Add(xrRowTitle); /***************************循环添加明细*********************************/ ;rowIndex<dt2.Rows.Count;rowIndex++) { if (dt2.Rows[rowIndex]["订单编号"].ToString()==tid ) { XRTableRow xrForRow = new XRTableRow(); XRTableCell xrForRowSPC = new XRTableCell();//软件规格 XRTableCell xrForRowRem = new XRTableCell();//产品备注 XRTableCell xrForRowNum = new XRTableCell();//订货数量 XRTableCell xrForRowBarCode = new XRTableCell();//条形码 //-------------------------------------- xrForRowBarCode .CanGrow = true; xrForRowBarCode.CanShrink = false; xrForRowBarCode.Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrForRowBarCode.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; //------------------------------------- xrForRowSPC.CanGrow = true; xrForRowSPC.CanShrink = false; xrForRowSPC.Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrForRowSPC.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; //------------------------------------- xrForRowRem.CanGrow = true; xrForRowRem.CanShrink = false; xrForRowRem.Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrForRowRem.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; xrForRowSPC.Width = ; xrForRowRem.Width = ; xrForRowNum.Width = ; xrForRowBarCode.Width = ; //------------------------------------- xrForRowNum.CanGrow = true; xrForRowNum.CanShrink = false; xrForRowNum.Font = new System.Drawing.Font("微软雅黑", 8F, System.Drawing.FontStyle.Bold); xrForRowNum.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; //------------------------------------- xrForRowSPC.Text = dt2.Rows[rowIndex]["软件规格"].ToString(); xrForRowRem.Text = dt2.Rows[rowIndex]["产品备注"].ToString() ; xrForRowNum.Text = dt2.Rows[rowIndex]["订货数量"].ToString() ; xrForRowBarCode.Text = dt2.Rows[rowIndex]["条形码"].ToString() ; //------------------------------------- xrForRowSPC.WordWrap = true; xrForRow.Cells.Add(xrForRowRem);// xrForRow.Cells.Add(xrForRowSPC); //软件规格 xrForRow.Cells.Add(xrForRowBarCode); // xrForRow.Cells.Add(xrForRowNum);// //------------------------------------- table1.Rows.Add(xrForRow); } } }
三、添加行列的公共方法
/// <summary> /// 替换特殊字符 /// </summary> /// <param name="str"></param> /// <returns></returns> public string ReStr(string str) { return str.Replace(";", ".").Replace(",", ".").Replace(";", ".").Replace(",", "."); } /// <summary> /// 添加行 /// </summary> /// <param name="table1">DevExpress.XtraReports.UI.XRTable 对象</param> /// <param name="RowsStr">格式:"文本,宽度,字体大小,字体,是否加粗,对其方式:左、右、中;";</param> public void TableAddRow(DevExpress.XtraReports.UI.XRTable table1, string RowsStr) { RowsStr = RowsStr.Replace(";", ";").Replace(",", ","); string[] Zstr = RowsStr.Split(';'); ", 字体大小 = "8F", 字体 = "微软雅黑", 是否加粗 = "否",对其方式="左"; XRTableRow xrRow = new XRTableRow(); ; i < Zstr.Length; i++) { 文本 = Zstr[i].Split(]; 宽度 = Zstr[i].Split(].Replace(" ", ""); 字体大小 = Zstr[i].Split(].Replace(" ", ""); 字体 = Zstr[i].Split(].Replace(" ", "");//"微软雅黑" 是否加粗 = Zstr[i].Split(].Replace(" ",""); 对其方式 = Zstr[i].Split(].Replace(" ",""); //--------------------------------- float f字体大小 = float.Parse(字体大小); //--------------------------------- XRTableCell xrRowCell = new XRTableCell(); xrRowCell.CanGrow = true; xrRowCell.CanShrink = false; xrRowCell.Width = Convert.ToInt32(宽度); //--------------------------------- //---是否加粗 System.Drawing.FontStyle fstyle = System.Drawing.FontStyle.Bold; if (是否加粗 == "否") { fstyle = System.Drawing.FontStyle.Regular; } //--------------------------------- xrRowCell.Font = new System.Drawing.Font(字体, f字体大小, fstyle); //--------------------------------- //对其方式 DevExpress.XtraPrinting.TextAlignment txtalign = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; if (对其方式=="左") { txtalign = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; } if (对其方式 == "右") { txtalign = DevExpress.XtraPrinting.TextAlignment.MiddleRight; } if (对其方式 == "中") { txtalign = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; } xrRowCell.TextAlignment = txtalign; //----------------------------------- xrRowCell.Text = 文本; xrRow.Cells.Add(xrRowCell);//"产品名称" } table1.Rows.Add(xrRow); }
调用:
/***************************外部平台单号*********************************/ TableAddRow(table1, "订单号,160,16,微软雅黑,是,左;"+OutTid+",360,16,微软雅黑,是,左"); /***************************发货单号*********************************/ TableAddRow(table1, "发货单号,160,16,微软雅黑,是,左;"+tid+",360,16,微软雅黑,是,左"); /***************************列标题*********************************/ TableAddRow(table1, "产品名称,300,8,微软雅黑,是,左;"//第一列 +"货号,160,8,微软雅黑,是,左;"//第二列 +"条码,160,8,微软雅黑,是,左;"//第三列 +"数量,60,8,微软雅黑,是,中"//第四列 );
显示效果图:
C#打印模板设计,E店宝打印模板设置,winfrom打印模板设计,DevExpress.XtraReports.UI.XRTable 表格代码生成。的更多相关文章
- 生鲜配送管理系统_升鲜宝V2.0 小标签打印功能说明_15382353715
小标签打印说明 小标签打印可以打印本系统的订单商品数量,也可以把外部的订单商品导入本系统进行打印. 打印本系统中的订单商品操作说明 1.1 界面说明 1.2 查询条件 1.2.1 ...
- .NET环境下有关打印页面设置、打印机设置、打印预览对话框的实现
原文:.NET环境下有关打印页面设置.打印机设置.打印预览对话框的实现 我个人认为,开发MIS,首先就得解决网格的问题,而开发工具为我们提供了如DataGrid.MSHFlexGrid的控件.其次,是 ...
- wpf 大控件 打印 将控件转成 xps格式 并分页打印
//PayRollPrintList:要打印的 list 可换成自己要打印的类型 private List<PayRoll> _PayRollPrintList = new List< ...
- C# E店宝格格家接口对接
一.实现图片 二.实现通用方法 /// <summary> /// 调用通用方法 /// </summary> /// <param name="strURL& ...
- PrintDocument打印、预览、打印机设置和打印属性的方法
WindowsForm 使用 PrintDocument打印.预览.打印机设置和打印属性的方法. private void Form1_Load(object sender, System.Event ...
- Excel设置excel打印每页都有表头标题
Excel设置excel打印每页都有表头标题
- C# winfrom打印技术初探
最近用到了winform去打印,网上查了一些资料,大概内容: 一 .首先有几个类 PageSetupDialog . PrintDialog .PrintDocument .PrintPreviewC ...
- C# 中printDocument打印、预览、打印机设置和打印属性的方法
private void Form1_Load(object sender, System.EventArgs e) { //获取或设置一个值,该值指示是否发送到文件或端口 printDocument ...
- PrintDocument打印、预览、打印机设置和打印属性的方法(较完整) .
private void Form1_Load(object sender, System.EventArgs e) { //获取或设置一个值,该值指示是否发送到文件或端口 printDocument ...
随机推荐
- python3的变量作用域规则和nonlocal关键字
也许你已经觉得自己可以熟练使用python并能胜任许多开发任务,所以这篇文章是在浪费你的时间.不过别着急,我们先从一个例子开始: i = 0 def f(): print(i) i += 1 prin ...
- C# .NET Web API 如何自訂 ModelBinder
各位好!這次要來替大家介紹的是如何在 .NET Web API 中自訂一個 ModelBinder 透過自定義的 ModelBinder 我們可以很簡單的將 QueryString 傳過來的參數綁定 ...
- 【推荐】桌面版AI伴侣 含2.47 2.49 2.51汉化版
桌面版AI伴侣,无需安装aiStarter,直接运行bat就能在电脑上启动AI伴侣,启动速度比虚拟机快很多.缺点是对硬件的要求比较高. 文件来自 https://mp.weixin.qq.com/s/ ...
- Android音视频之AudioTrack播放音频(二)
前一篇讲了如何录制wav音频文件,本篇就来讲讲如何播放wav文件,这里就是使用AudioTrack来播放音频,确切的说是播放pcm格式数据,使用AudioTrack播放也没什么难度,主要就是将数据写入 ...
- LOJ #6060. 「2017 山东一轮集训 Day1 / SDWC2018 Day1」Set
有趣的思博套路题,想到了基本上加上个对线性基的理解就可以过了 首先考虑到这个把数分成两半的分别异或的过程不会改变某一位上\(1\)的总个数 因此我们求出所有数的\(\operatorname{xor} ...
- 【AI开发】基于深度学习的卡口车型、车牌识别
服务端代码后面给出 卡口车型.车牌识别demo截图 服务器:
- 微信小程序页面跳转方法和携带参数详解
1.页面跳转方式 (1)标签跳转 open-type的属性值对应api里的用法即wx.的用法 1 <navigator url="/page/navigate/navi ...
- 4年前端、2年CTO:一个非科班程序员的真实奋斗史
1.引言 我,Scott,一家创业公司的 CTO. 从业6年却很少写文章,近一年来接触了几十个刚毕业的前端新人,也面试了100多个前端工程师和Nodejs工程师,对于前端发展的这个职业算是有些感触 ...
- Yii2 解决2006 MySQL server has gone away问题
Yii2 解决2006 MySQL server has gone away问题 Yii2版本 2.0.15.1 php后台任务经常包含多段sql,如果php脚本执行时间较长,或者sql执行时间较长, ...
- 一行命令更新所有 npm 依赖包
npm 包的更新速度很快,为了将项目或者全局依赖更新到最新版本.传统的做法是一个一个更新,比如更新 react 到最新版本,命令如下: # npm npm i --save react@latest ...