C# 标签打印示例 1
本实例是在Webservice 中通过excel做模板来打印标签。
具体需求是:一个订单一页纸打印4行分录,,如果超过4行,则再次按照原格式换纸打印,如果行数未满4行,则补空行。
一、实现步骤:
2、在程序中调用EXCEL 填充数据
3、调用EXCEL打印方法打印
二、源码重点讲解:
1、List<> 泛型集合保存打印的数据,通过它可以删除已经打印过的数据
示例:
for (int i = 0; i <= list.Count; i++)
{
if (i > 0) i--; //每当执行完下一次的时候,将这个值初始化为0,即i--
if (nindex == Convert.ToInt32(pagesize)) break; //如果超过指定的行数,则跳出循环
FitemData model = list[i];
..........
list.Remove(model); //移除当前行
}
2、While 循环:当条件为真的时候执行循环体,先判断后执行,循环次数不固定
示例:
while (list.Count > 0)
{
PrintExccel(ref list, damountcount.ToString(), FirstPageText.ToString(), PageCount.ToString(), PageSize.ToString(), ref strmes);
FirstPageText++;
} ==================================源码讲解===========================/// <summary>
/// 打印方法
/// </summary>
/// <param>打印的数据</param>
/// <param>bug返回的异常信息</param>
private void Print(DataTable dt, ref string strmes){
List<FitemData> list = new List<FitemData>();
decimal damountcount = 0.00M; //合计小写金额
try
{
foreach (DataRow dr in dt.Rows)
{
FitemData model = new FitemData();
model.F_106 = dr["F_106"].ToString();
model.FAmount = Convert.ToDecimal(dr["FAmount"].ToString()).ToString("f2");
model.FPrice = Convert.ToDecimal(dr["FPrice"].ToString()).ToString("f2");
model.FUnitName = dr["FUnitName"].ToString();
model.Fdate = dr["fdate"].ToString();
model.Fbillno = dr["fbillno"].ToString();
model.FQty = dr["FQty"].ToString();
damountcount += Convert.ToDecimal((model.FAmount));
list.Add(model);
}
int PageSize = Convert.ToInt32(ConfigurationManager.AppSettings["PageSize"]); //每页行数
int PageCount = 0; //总页数
int FirstPageText = 1; //首页
PageCount = list.Count % PageSize > 0 ? list.Count / PageSize + 1 : list.Count / PageSize;
while (list.Count > 0)
{
PrintExccel(ref list, damountcount.ToString(), FirstPageText.ToString(), PageCount.ToString(), PageSize.ToString(), ref strmes);
FirstPageText++;
}
}
catch (Exception ex)
{
strmes = ex.Message;
}
}
/// <summary>
/// excel 打印
/// </summary>
/// <param>总记录数</param>
/// <param>小写金额总计</param>
/// <param>页码数</param>
/// <param>每页行数</param>
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/68579.html
- 上一篇:numpy/scipy
- 下一篇:JSWING小工具