我有一个使用文档查看器的WPF应用程序。我也使用documentviewer.Print()以编程方式开始打印;但是,当按下它时,它会显示带有Windows打印机的屏幕,并使用户必须再次单击该屏幕上的"OK“才能启动。有没有一种方法可以避免确认并使documentviewer.Print();立即在默认的Windows打印机上启动打印作业?
发布于 2011-04-18 22:56:30
您所需要的就是默认的打印队列,您可以通过
var pq = LocalPrintServer.GetDefaultPrintQueue()由此,您可以创建一个XpsDocumentWriter
var writer = PrintQueue.CreateXpsDocumentWriter(pq);现在,您可以通过Document property从您的DocumentViewer获取DocumentPaginator,它将返回一个具有DocumentPaginator property的IDocumentPaginatorSource
var paginator = documentviewer.Document.DocumentPaginator;您可以将该权限发送到XpsDocumentWriter's Write method
writer.Write(paginator);很简单,不是吗?
https://stackoverflow.com/questions/5704586
复制相似问题