How to skip the dialog of printing in printDocument.print() and print page directly?

.net, c#, winapp

Solution

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();

Problem

When I use `MyPrintDocument.print()` in a Windows application written in C#, a dialog is shown for the Windows processing print routine with a cancel button. I don't want this dialog shown, is it possible? If not, which way should I use? My program uses a thermal printer.

Original source

Related problems