在visual studio 2010中为报表查看器设置页面布局

时间:2012-10-20 06:44:09

标签: visual-studio-2010 c#-4.0 report-viewer2010

我又有一点问题。 我在Visual Studio 2010中的Windows窗体应用程序中使用了ReportViewer。我的报告的宽度约为7英寸。当我在打印布局中查看报表时,报表会在页面上被剪切,即页面上只有一半的内容位于页面边缘,而页面边界不在右边。然后我必须在报告查看器顶部菜单中单击页面设置来更改页面设置,我只是将左右边距从1减少到0.25。

每次查看和打印报告时,我都不想这样做。有没有办法在C#中以编程方式更改这些设置或更改默认页面布局?

3 个答案:

答案 0 :(得分:19)

您可以使用以下代码:

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

答案 1 :(得分:3)

使用pg.LandScape = true和您现有的

    pg.Margins.Top = 0;
    pg.Margins.Bottom = 0;
    pg.Margins.Left = 0;
    pg.Margins.Right = 0; 
    pg.LandScape = true

答案 2 :(得分:2)

ReportViewer rpt = new ReportViewer();
rpt.SetPageSettings(new System.Drawing.Printing.PageSettings() { Landscape = true });