一:C#代码直接打印pdf文件(打印质保书pdf文件)
引用:
代码注释很详细了。
二:先生成excel在调用打印(生成excel主要在于布局)
按钮事件代码:
PrintHelper.cs文件代码
三在VisualStudio中通过插件编辑rdlc文件进行可视化布局(动态添加行的我暂时没有弄出来,这里只演示固定字段的打印)
首先引用:
第一步:安装插件
搜索rdlc
第二步:这里下载好之后从新启动vs它会自动安装插件。安装好后创建文件。
第三步:可视化布局操作
第四步:设置数据绑定,在需要绑定数据的单元格中鼠标右键点击文本框属性。
名称:与实体属性写法一致值:[与实体属性写法一致]
设置字体及大小
第五步:布局及所有字段写好之后就设置数据集(我这里用的是本地实体模型)
右键添加数据集
这里选择你要绑定的实体
注意:当界面设计好之后我们重新生成项目总是提示生成失败,而vs也不提示哪里出错了。
我就猜测是不是这个rdlc文件的问题,我就试着把rdlc文件排除在项目外,再次生成就可以了。
当然这个不影响我们编辑rdlc文件,你可以继续编辑,只不过在读取的时候,是默认bin目录下,这里每次编辑了就要手动赋值到bin目录中。
这里设计好了之后就看代码。
privatevoidbtn_code_Click(objectsender,RoutedEventArgse){//数据varcsm=newCodeSheetModel(){CodeSheetNumber="1W52902644",ContractNuber="D8S0363501",QuasiSign="",LoadingPoint="北部站",DeliveryStandard="GB/T1499.2-2019",DeliveryAddress="",OrderUnit="。。。。。有限公司",ReceivingUnit="。。。。。。。有限公司",SettlementUnit="。。。。。有限公司",PrivateLineName="螺纹钢",LicenseNumber="川B37037",BillLoadNo="1W62904010501",ShippType="21",DeliveryClass="2",ProductDescription="不说明",VarietyName="螺纹钢",ShipmentNo="",BrandNo="HRB400E1114",FactoryOutData="2019-04-0314:10",MeterMode="计量",PrintDateTime="2019-04-0314:10:45"};varp=newCodePrintHelper();p.Run(csm,(ex)=>{MessageBox.Show(ex.Message);},"NPI84FFAF(HPLaserJetMFPM436)");MessageBox.Show("完成打印。。。");}