В моем приложении C # я пытаюсь сгенерировать предварительный просмотр печати без появления на экране диалогового окна прогресса.
Я полагаю, что вы можете использовать PrintDocument.PrintController , чтобы предотвратить это при печати в режиме реального времени (т. Е. Не при предварительном просмотре), однако, похоже, это не работает при предварительном просмотре.
Мой код выглядит следующим образом:
public FrmDeliveryNotePrintPreview(DeliveryNote deliveryNote)
{
InitializeComponent();
this.Text = "Delivery Note #" + deliveryNote.Id.ToString();
// The print preview window should occupy about 90% of the
// total screen height
int height = (int) (Screen.PrimaryScreen.Bounds.Height * 0.9);
// Making an assumption that we are printing to A4 landscape,
// then adjust the width to give the correct height:width ratio
// for A4 landscape.
int width = (int) (height / 1.415);
// Set the bounds of this form. The PrintPreviewControl is
// docked, so it should just do the right thing
this.SetBounds(0, 0, width, height);
PrinterSettings printerSettings = new PrinterSettings();
PrintDeliveryNotes pdn = new PrintDeliveryNotes(
new DeliveryNote[] { deliveryNote },
printerSettings);
PrintDocument printDocument = pdn.PrintDocument;
printDocument.PrintController = new PreviewPrintController();
ppcDeliveryNote.Document = printDocument;
}
Предварительный просмотр печати работает точно так, как я хочу, за исключением того, что отображается диалоговое окно прогресса предварительного просмотра.
Предложения, пожалуйста?