我对C#中的PrinterSettings有疑问。当我在桌面打印机上将PrinterSettings.Copies设置为2时,它将打印2个文档。PrinterSettings不占用拷贝数
但是,当我在Zebra GK420d Label printer
上将副本设置为2时,我定义的副本数量将被打印机默认份数覆盖。 Zebra打印机是唯一允许我在打印机设置中定义打印份数的打印机(开始 - >设备和打印机 - >打印机属性)。
但是,当我打开一个PrintDialog并将其中的副本数设置为2。但是,如果我以编程方式执行,它将无法正常工作。这里是我的情况:
形式:打印机设置,当我加载下面的代码被执行
ps_Current = new PrinterSettings();
ps_Current.PrinterName = cbPrinters.Text;
这正常工作,在PrinterSettings变量initiallized和PrinterName的设置为我选择打印机的形式。然后根据副本数量,我有以下内容:
ps_Current.Copies = (short)seAantalKopieen.Value;
这也适用于(除了Zebra打印机以外的所有打印机)。不知何故,Zebra打印机采用默认的打印机设置,而不是使用我的代码。
当我更改代码这样:
PrintDialog PD = new PrintDialog();
PD.PrinterSettings = ps_Current;
PD.ShowDialog();
ps_Current = PD.PrinterSettings;
这会给我一个PrintDialog类屏幕,在这里我可以选择打印机和复印量。如果我在这里选择Zebra打印机并将副本更改为2,则它将起作用。但我不希望使用Windows PrintDialog类我只想我自己的打印对话框,只有:
Printer:
Source:
Amount of copies:
但我无法得到它的工作。
Zebra支持如何? – 2014-11-24 16:11:20
你好Mikko,去试试看。 – 2014-11-25 08:02:11
我编辑过你的标题。请参阅:“[应该在其标题中包含”标签“](http://meta.stackexchange.com/questions/19190/)”,其中的共识是“不,他们不应该”。 – 2014-12-18 06:02:05