В наших проектах мы всегда создаем форму ReportViewer
, целью которой является отображение XtraReport
(или PrintingSystem
).
Средство просмотра состоит из обычного XtraForm, в который мы помещаем PrintRibbonController. Это автоматически создаст ленту и управление печатью.
Затем мы используем метод, который привязывает отчет к зрителю:
public partial class ReportViewer : DevExpress.XtraEditors.XtraForm
{
public ReportViewer()
{
InitializeComponent();
}
// Used when displaying a single report
public void SetReport(XtraReport report)
{
this.printControl.PrintingSystem = report.PrintingSystem;
report.CreateDocument();
this.printControl.UpdatePageView();
}
// Used when displaying merged reports
public void SetReport(PrintingSystem system)
{
this.printControl.PrintingSystem = system;
this.printControl.UpdatePageView();
}
}
Таким образом, отображение отчета выглядит так:
ReportViewer viewer = new ReportViewer();
viewer.SetReport(new EmployeeReport());
viewer.Show();
Такой подход к созданию собственного средства просмотра может помочь вам:
- Управляет безопасностью пользователя (например, обычный пользователь не может изменить водяной знак),
- Изменяет ленту, удаляя или добавляя кнопку в соответствии с вашими требованиями.