我想在C#WinForms应用程序的ReportViewer rdlc
中更改打印机名称。
我将打印机名称保存在数据库中,我想用它来打印(即不是我计算机上的默认打印)。
我在pritToPrinter
方法中使用所需的名称直接打印。
问题:大小已更改,仍然使用PC默认打印机。
代码:
ReportDataSource reportDSDetail = new ReportDataSource("POSPRINTDataSet", dt);
this.reportViewer1.LocalReport.DataSources.Clear();
this.reportViewer1.LocalReport.DataSources.Add(reportDSDetail);
this.reportViewer1.SetDisplayMode(DisplayMode.PrintLayout);
this.reportViewer1.ZoomMode = ZoomMode.PageWidth;
//Get Default Printer
string tkhan = "Select DefaultPrinter from tbl_terminallocation ";
DataTable dt2 = DataAccess.GetDataTable(tkhan);
string defPri = dt2.Rows[0].ItemArray[0].ToString();
reportViewer1.PrinterSettings.PrinterName = defPri;
reportViewer1.LocalReport.DisplayName = defPri;
this.reportViewer1.LocalReport.Refresh();
this.reportViewer1.RefreshReport();
reportViewer1.LocalReport.PrintToPrinter();
原始报告: enter link description here
报告大小更改的地方: enter link description here