从 WPF 中的画布控件打印
本文关键字:控件 打印 布控件 WPF | 更新日期: 2023-09-27 18:35:11
我的应用程序从画布(WPF、C#)打印,但应用程序需要分配默认打印机。默认打印机在 PC 上保存为.ini文件。这个概念是,工作人员可以单击我的画布上的打印按钮,画布将生成布局,然后发送到打印机。
所以,我需要做的两件事是:
- 根据文本文件中的字符串设置默认打印机
- 装订后打印
单击打印按钮后,画布会使用我想要的布局(通过数据绑定)进行更新,并且作业将发送到打印机(打印机检测到作业并显示在打印机队列中),但打印机从不打印文档。这几乎就像我排队工作但从未说过"开始"。
然后我的佳能给了我一个错误(这可能是一个红色的听力),即"另一台打印机正在使用打印机。以下状态是该计算机---的使用状态"
这是我正在使用的 2 种主要方法。
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, "");
}));
}
好的,我在其他地方问了一个不同的问题,但提供了源代码和答案:使用 WPF 进行 C# 打印