我有一个小问题,希望您能帮忙解决。
我在Visual Studio 2010的Windows表单应用程序中使用了ReportViewer。我的报告宽度约为7英寸。当我以打印布局查看报告时,报告被切割在页面上,即只有一半的内容在页面上,其余的超出了右边距和页面边界。然后我不得不点击报告查看器顶部菜单中的页面设置来更改页面设置,我只需将左右边距从1减少到0.25。
我不想每次查看和打印报告时都这样做。是否有方法以C#编程方式更改这些设置或更改默认页面布局?
我有一个小问题,希望您能帮忙解决。
我在Visual Studio 2010的Windows表单应用程序中使用了ReportViewer。我的报告宽度约为7英寸。当我以打印布局查看报告时,报告被切割在页面上,即只有一半的内容在页面上,其余的超出了右边距和页面边界。然后我不得不点击报告查看器顶部菜单中的页面设置来更改页面设置,我只需将左右边距从1减少到0.25。
我不想每次查看和打印报告时都这样做。是否有方法以C#编程方式更改这些设置或更改默认页面布局?
你可以使用以下代码:
System.Drawing.Printing.PageSettings pg=new System.Drawing.Printing.PageSettings();
pg.Margins.Top = 0;
pg.Margins.Bottom = 0;
pg.Margins.Left = 0;
pg.Margins.Right = 0;
System.Drawing.Printing.PaperSize size = new PaperSize();
size.RawKind = (int)PaperKind.A5;
pg.PaperSize = size;
reportViewer1.SetPageSettings(pg);
this.reportViewer1.RefreshReport();
pg.Margins.Top = 0;
pg.Margins.Bottom = 0;
pg.Margins.Left = 0;
pg.Margins.Right = 0;
pg.LandScape = true
ReportViewer rpt = new ReportViewer();
rpt.SetPageSettings(new System.Drawing.Printing.PageSettings() { Landscape = true });