RDLC报表多页打印时的一些问题
有多页数据需要打印时,RDCL报表有时会发生只能打印第一页的情况,而点击了打印布局按钮后,有时能正常的打印后续页。
鉴于这种情况,我们可以控制打印界面的呈现模式,避开这个小Bug,代码如下:
public frmFirstCases_Print(DataSet ds)
{
InitializeComponent();
this.DsSource = ds;
}
private void frmFirstCases_Print_Load(object sender, EventArgs e)
{
// 设置本地报表的路径(App.SysPath通常指向程序启动的框架)
this.reportViewer1.LocalReport.ReportPath = App.SysPath + "\\First_Cases.rdlc";
// 清空并添加报表数据源
reportViewer1.LocalReport.DataSources.Clear();
this.reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DsReportSource_Cover_Info",
DsSource.Tables[0]));
this.reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DsReportSource_Cover_Diagnose",
DsSource.Tables[1]));
this.reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DsReportSource_Cover_Operation",
DsSource.Tables[2]));
this.reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DsReportSource_Cover_Quality",
DsSource.Tables[3]));
this.reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DsReportSource_Cover_Temp",
DsSource.Tables[4]));
// 呈现报表
this.reportViewer1.RefreshReport();
// 将显示模式切换到打印布局模式
this.reportViewer1.SetDisplayMode(DisplayMode.PrintLayout);
// 将缩放模式设置为百分比
this.reportViewer1.ZoomMode = ZoomMode.Percent;
// 设为 100%
this.reportViewer1.ZoomPercent = 100;
}
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步