Which PrintController are you using.
The .NET Framework includes three print controllers that are derived from PrintController that help accomplish common tasks. The StandardPrintController prints a document to a printer. The PreviewPrintController generates a preview of what the document will look like when printed and is used by the PrintPreviewControl and PrintPreviewDialog classes. The PrintControllerWithStatusDialog provides a printing status dialog during the printing process.
It sounds like you are using the PrintControllerWithStatusDialog PrintController.
Caveat: I am not in a position to verify that the basic PrintController doesn't act the same way.
According to this MSDN Forum Posting the PrintControllerWithStatusDialog is the default:
He suggests something like this:
MyPrintDocument.PrintController = new System.Drawing.Printing.StandardPrintController();