我對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