C#winform打印预览
刚刚做了一个winform的打印预览功能,用的是Micorsoft.Office.Interop.Excel。打印预览的时候显示不全。有11列,预览的时候只有10列。不知道怎么回事。求助各位大神一下。以下是代码Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
if (xlApp == null)
{
MessageBox.Show("无法创建Excel对象,可能您的机子未安装Excel");
}
bool fileSaved = false;
string strpath = Application.StartupPath + "\\template\\Test.xlsx";
Microsoft.Office.Interop.Excel.Workbooks workbooks = xlApp.Workbooks;
Microsoft.Office.Interop.Excel._Workbook workbook = workbooks.Add(strpath); //加载模板
Microsoft.Office.Interop.Excel.Sheets sheets = workbook.Sheets;
Microsoft.Office.Interop.Excel._Worksheet worksheet = (Microsoft.Office.Interop.Excel._Worksheet)sheets.get_Item(1); //第一个工作薄
//var mark = new JObject { { "序号", "1" }, { "所属科室", "一级库" },{ "注册证产品名", "止血器" },
// { "简称", "止血器" }, { "规格", "Z6" }, { "包装单位", "一级库" },{ "单位数量", "止血器" },
// { "总数量", "6" }, { "失效日期", "2019-09-01" },{ "注册证号", "国械注进20173770210" },{ "注册证有效期", "2020-08-20" }};
string str = "{\"id\":1,\"Suoshu\":\"一级库\",\"ReditName\":\"止血器\",\"Name\":\"止血器\",\"Guige\":\"Z6\",\"Company\":\"一级库\",\"Count\":\"9\",\"Sum\":\"5\",\"sDate\":\"2019-09-01\",\"IDhao\":\"国械注进20173770210\",\"yDate\":\"2019-09-01\"}";
YLHCMessage ylhc = JsonConvert.DeserializeObject<YLHCMessage>(str);
worksheet.Cells = ylhc.id.ToString();
worksheet.Cells = ylhc.Suoshu.ToString();
worksheet.Cells = ylhc.ReditName.ToString();
worksheet.Cells = ylhc.Name.ToString();
worksheet.Cells = ylhc.Guige.ToString();
worksheet.Cells = ylhc.Company.ToString();
worksheet.Cells = ylhc.Count;
worksheet.Cells = ylhc.Sum;
worksheet.Cells = Convert.ToDateTime(ylhc.sDate.ToString());
worksheet.Cells = ylhc.IDhao.ToString();
worksheet.Cells = Convert.ToDateTime(ylhc.yDate.ToString());
string savaPath = @"C:\Users\dell、\Desktop_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xlsx";
workbook.SaveAs(savaPath);
workbooks.Open(savaPath);
xlApp.Visible = true;
workbook.PrintPreview();
workbook.Save();
xlApp.Quit();
workbooks.Close();
自己先顶下
我用你的代码打印出来就是11列,看看是不是你的模板文件有问题。
ibcadmin 发表于 2018-4-17 14:28
我用你的代码打印出来就是11列,看看是不是你的模板文件有问题。
嗯,打印出来是11列。就是预览的时候看的是10列。然后我昨天改了下模板的页边距。预览就没问题了 xiaowei 发表于 2018-4-18 09:45
嗯,打印出来是11列。就是预览的时候看的是10列。然后我昨天改了下模板的页边距。预览就没问题了
恩 模板问题
页:
[1]