C# 在WPF中从画布控件打印
我的应用程序从画布(WPF,C#)打印,但应用程序需要指定默认打印机。默认打印机保存为PC上的.ini文件。概念是,员工可以单击我画布上的“打印”按钮,画布将生成布局,然后发送到打印机 因此,我需要做的两件事是:C# 在WPF中从画布控件打印,c#,printing,printqueue,C#,Printing,Printqueue,我的应用程序从画布(WPF,C#)打印,但应用程序需要指定默认打印机。默认打印机保存为PC上的.ini文件。概念是,员工可以单击我画布上的“打印”按钮,画布将生成布局,然后发送到打印机 因此,我需要做的两件事是: 根据文本文件中的字符串设置默认打印机 装订后打印 单击“打印”按钮后,画布将更新为我想要的布局(通过数据绑定),作业将发送到打印机(打印机检测到作业并显示在打印机队列中),但打印机从不打印文档。这几乎就像我在排队等待一份工作,但从未说过“开始” 我的佳能然后给我一个错误(这可能是一个红
internal void AutoPrint()
{
string printerName = GetPrinterNameFromTextFile();
PrintDialog dialog = new PrintDialog();
getView(); //queries database, returns model and binds
Print(dialog, config.PrinterName);
}
internal void Print(PrintDialog dialog, string printerName)
{
Canvas canvas = new Canvas();
canvas = this.PrintCanvas;
PrintQueue queue = new LocalPrintServer().GetPrintQueue(printerName);
dialog.PrintQueue = queue;
Dispatcher.BeginInvoke(DispatcherPriority.Loaded, new Action(delegate()
{
dialog.PrintVisual(canvas, "");
}));
}
好的,我问了另外一个问题,但提供了源代码和答案: