我有一个应用程序,它有两个选项,用于打印报表或预览报表。我有以下代码来打印报告 -如何在C#中执行打印预览Crystal Reports 2010
FCPMS.Reports.rptPanelStudy crtrptPanelStudy = new FCPMS.Reports.rptPanelStudy();
crtrptPanelStudy.FileName = tReportFileName; -(refers to the file location on the computer)
crtrptPanelStudy.DataDefinition.FormulaFields["PANELNUM"].Text = "'5'";
foreach (Table tblTable in crtrptPanelStudy.Database.Tables)
{
tiInfo = tblTable.LogOnInfo;
tiInfo.ConnectionInfo = ciConnection;
tblTable.ApplyLogOnInfo(tiInfo);
}
crtrptPanelStudy.PrintToPrinter(1, false, 0, 0);
这可正常工作并打印报告。但是,我无法找到类似的代码来简单地使用此报告打开打印机预览。有谁知道我该怎么做?我只需要打印机预览即可在没有报告实际打印的情况下弹出。任何帮助,将不胜感激。
我还试图用打印对话框 -
PrintPreviewDialog printpreview = new PrintPreviewDialog();
printpreview.Document = crtrptFlowRangeSummary;
printpreview.ShowDialog();
,但得到的第二行此错误
错误35无法隐式转换类型
FCPMS.Reports.rptFlowRangeSummary
到System.Drawing.Printing.PrintDocument
有你看着PrintPreviewDialog上? http://msdn.microsoft.com/en-us/library/system.windows.forms.printpreviewdialog.aspx – MethodMan 2012-08-17 13:17:53
是的,但没有奏效。详情请参阅我编辑的问题。 – 2012-08-17 13:26:35
您需要CrystalReportPrintPreviewForm – MethodMan 2012-08-17 13:32:37