我有一个WPF应用程序,其中使用了文档查看器。我还通过documentviewer.Print()编程启动打印。然而,当按下该按钮时,它会弹出带有Windows打印机的屏幕,并使用户再次单击“确定”才能开始。是否有方法可以避免确认并使documentviewer.Print()立即在默认的Windows打印机上启动打印作业?
我有一个WPF应用程序,其中使用了文档查看器。我还通过documentviewer.Print()编程启动打印。然而,当按下该按钮时,它会弹出带有Windows打印机的屏幕,并使用户再次单击“确定”才能开始。是否有方法可以避免确认并使documentviewer.Print()立即在默认的Windows打印机上启动打印作业?
您所需要的是默认的打印队列,您可以通过以下方式获取:
var pq = LocalPrintServer.GetDefaultPrintQueue()
var writer = PrintQueue.CreateXpsDocumentWriter(pq);
var paginator = documentviewer.Document.DocumentPaginator;
你可以直接将其发送到XpsDocumentWriter的Write方法:
writer.Write(paginator);
简单,不是吗?