Измените имя принтера в Report Viewer и напечатайте тот же размер C # - PullRequest
0 голосов
/ 24 октября 2018

Я хочу изменить имя принтера в ReportViewer rdlc в приложении C # WinForms.

Я сохранил имя принтера в базе данных и хочу использовать его для печати (то есть не печать по умолчанию на моемкомпьютер).

Я использовал нужное имя в методе pritToPrinter для прямой печати. ​​

Проблемы : размер изменился, и он по-прежнему использует принтер по умолчанию для ПК.

Код:

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();

Исходный отчет : введите описание ссылки здесь

Отчет, где размер изменился : введите описание ссылки здесь

...