PrintVisual到特定的打印机托盘

时间:2012-08-06 16:50:48

标签: wpf printing

我有一个WPF用户控件,我希望能够使用PrintDialog.PrintVisual()打印它。我不想显示打印对话框,所以我希望能够设置特定的打印机和打印机托盘来打印它。我想出了如何打印到特定的打印机,但我需要打印到我的打印机的“纸盘3”,我无法弄清楚如何。

PrintDialog dialog = new PrintDialog();
LocalPrintServer localPrintServer = new LocalPrintServer();
PrintQueue pq = localPrintServer.GetPrintQueue("HC102-HP5SIMXX");
dialog.PrintQueue = pq;
//Set printer tray somehow
dialog.PrintVisual(myControl, "My control");

1 个答案:

答案 0 :(得分:1)

更新:此处有更多信息:

http://social.msdn.microsoft.com/Forums/en-US/windowsxps/thread/f5859148-26f1-4e89-949c-180413bcc898/

http://www.wittersworld.com/selecting-the-input-tray-when-printing-xps-documents/

您必须使用GetPrintcapabilitiesAsXML才能获得InputBins的完整列表。


您可以在PrintCapabilities上查询InputBinCapability以查询可用的InputBins。

创建一个PrintTicket,通过InputBin选择托盘。

然后告诉PrintQueue通过UserPrintTicket使用用户票证