2
Answers

Print Crystal Report using button on a C# windows form

Vamshi K

Vamshi K

11y
13.1k
1
Hello All

In my windows application, reprots are displayed in a form. The requirement is in an other form, if user clicks on a button, it should send the report to the printer. I have tried number of times with many things but not able to print it or call the viewer print method successfully without exceptions. Can one of you please help?

Exception with the below code : {"\rError in File C:\\Users\\**********.rpt:\nUnable to connect: incorrect log on parameters."}

Here is my code

private ReportDocument reportDocument;
private PrintDocument printDocument;
private delegate void SerViewerCallback();
private CrystalReportViewer crystalViewer;

void btnPrint_Click(object sender, EventArgs e)
{
try
{
crystalViewer = new CrystalReportViewer();
reportDocument = new ReportDocument();
printDocument = new PrintDocument();

reportDocument.Load(_reportPath + _reportFileName);

this.SetViewer();
foreach (Control ctrl in this.crystalViewer.Controls)
{
if(ctrl.GetType() == typeof(ToolStrip))
{
foreach(ToolStripItem item in ((ToolStrip)ctrl).Items)
{
if(item.ToolTipText.Contains("Print Report"))
{
//crystalViewer.PrintReport();
reportDocument.PrintToPrinter(1, false, 1, 5);
}
}
}
}
}

Thanks for your help
Answers (2)