установить макет страницы для просмотра отчетов в Visual Studio 2010

У меня опять небольшая проблема. Я использовал ReportViewer в своем приложении Windows Form в Visual Studio 2010. Ширина моего идентификатора отчета составляет около 7 дюймов. Когда я просматриваю отчет в макете для печати, отчет обрезается по всей странице, т. Е. Только половина содержимого находится на странице, а остальная часть находится за пределами правого поля и границы страницы. Затем мне нужно щелкнуть «Настройка страницы» в верхнем меню средства просмотра отчетов, чтобы изменить настройку страницы, я просто уменьшаю левое и правое поля до 0,25 с 1 для каждого.

Я не хочу делать это каждый раз, когда просматриваю и печатаю отчет. Есть ли способ программно изменить эти настройки на С# или изменить макет страницы по умолчанию?


person Samarth Agarwal    schedule 20.10.2012    source источник


Ответы (2)


вы можете использовать код ниже:

 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();
person mjyazdani    schedule 25.10.2012
comment
Что делать, если я хочу использовать нестандартный размер бумаги? - person Smith; 19.12.2015
comment
@smith Эта ссылка может вам помочь. stackoverflow.com/ вопросы/2013630/ - person mjyazdani; 19.12.2015

Используйте pg.LandScape = true вместе с существующим,

    pg.Margins.Top = 0;
    pg.Margins.Bottom = 0;
    pg.Margins.Left = 0;
    pg.Margins.Right = 0; 
    pg.LandScape = true
person Sivaraman    schedule 31.10.2012