Как печатать напрямую, без Print Dialog в WPF? - PullRequest
12 голосов
/ 08 июня 2010

Я просто хочу узнать, как можно распечатать потоковый документ, не отображая диалог печати в WPF.

Спасибо за помощь…

Ответы [ 3 ]

16 голосов
/ 08 июня 2010

Вы можете использовать класс PrintDialog, не показывая диалоговое окно (без вызова ShowModal)

15 голосов
/ 05 апреля 2011

Это один из способов изменить принтер по умолчанию или изменить другие настройки:

using System.Printing;  //add reference to System.Printing Assembly
                        //if you want to modify PrintTicket, also add
                        //reference to ReachFramework.dll (part of .net install)
...

var dlg = new PrintDialog();

dlg.PrintQueue = printer; // this will be your printer. any of these: new PrintServer().GetPrintQueues()
dlg.PrintTicket.CopyCount = 3; // number of copies
dlg.PrintTicket.PageOrientation = PageOrientation.Landscape;

dlg.PrintVisual(canvas);
3 голосов
/ 13 марта 2011

Попробуйте

PrintDialog dialog = new PrintDialog();
dialog.PrintVisual(_PrintCanvas, "My Canvas");
...