2011-12-29 79 views
1

我有一個參數數組,它將命令UI進行更改。目前,對於每個數組參數,我正在更改我的UI並將UI作爲可視化打印。但現在,我需要將所有圖像一次全部發送給打印機。換句話說,我有10頁,併發送每頁打印。我需要一次將所有10頁發送到打印機,以支持雙面打印。我想我可以通過使用PrintQueue來做到這一點。但不知道如何使用它。希望有人能幫助我解決這個問題。如何使用打印隊列發送一系列可打印的圖像?

private void ButtonPrintAll_Click(object sender, RoutedEventArgs e) 
{ 
    //Creating the print dialog 
    //Show print Dialog 
    if(printDialog.ShowDialog()) 
    { 
    for(int i = 0; i < arrayParameterts.Count; i++) 
    { 
     frmMainContent.Source = new Uri(arrayParameterts[i], UriKind.Relative); 
     frmMainContent.UpdateLayout(); 
    } 
    } 
} 

在此先感謝...

+0

您是否可以粘貼您擁有的代碼,也許有人可以通過查看您現有的邏輯來了解如何完成此操作。在你的代碼中是否有任何對Duplex的引用,例如Printer.Duplex = 2 Printer.Print「測試Page 1 – MethodMan 2011-12-29 20:48:09

+0

以下是我用於打印的代碼塊。在按鈕單擊時,我將獲取參數數組和我改變與依賴於所述陣列參數不同的用戶控件的WPF頁的幀的源:

 private void ButtonPrintAll_Click(object sender, RoutedEventArgs e) { //Creating the print dialog //Show print Dialog if(printDialog.ShowDialog()) { for(int i = 0; i < arrayParameterts.Count; i++) { frmMainContent.Source = new Uri(arrayParameterts[i], UriKind.Relative); frmMainContent.UpdateLayout(); } } }
PushCode 2011-12-30 04:23:10

+0

在幀渲染事件,我打印佈局作爲視覺 空隙frmMainContent_ContentRendered(對象發件人,EventArgs e) { //獲取打印機性能 PrintCapabilities printerCapabilities = printDialog.PrintQueue.GetPrintCapabilities(pDialog.PrintTicket); //打印視覺 prin tDialog.PrintVisual(這是「我的打印輸出」); } 我一次發送一份打印件。所以,打印機不是雙面打印。我需要立即發送它們,以便打印頁面的兩面。我很抱歉所有格式不正確。我是新來的,不確定我如何做語法突出顯示。 – PushCode 2011-12-30 04:35:13

回答

1

how to change printer to print Duplex 這個網站介紹個人做了糾正所有的壞榜樣那名出在網絡上..這應該可以幫助您上手或轉換什麼您現有的代碼結束..

我會創建一個方法,該方法可以將該方法提取到接口併爲Duplex創建另一個方法,然後將其解壓縮到接口中,如果希望讓代碼在批次樣式打印之間切換或打印雙工..然後你可以配置它來處理。沒有必要浪費好代碼希望這有助於幫助

+0

你能否改正這個網址?它不起作用 – 2015-06-17 08:08:35

+0

我更新了URL – MethodMan 2015-06-17 17:35:43