The order of coding is wrong.
First you should load the report file & then assign the
ReportDocument
to
CrystalReportViewer
. So it should be like below.
ReportDocument1.Load(StrPath);
crystalReportViewer1.ReportSource = ReportDocument1;
crystalReportViewer1.Refresh();
And there's no need for
PrintToPrinter
method in your code because you wanted only to view the report.