2011-10-18 73 views
0

我有要求在保存按鈕單擊打印WPF表單內容。內容是純文本,並且在每行上都是名稱值對。我不需要連續保存分頁符。WPF - 在同一頁上打印內容

我試過了PrintDialog,FlowDocument和FixedDocument的樣本,無法避免分頁符。 有什麼特別的設置我錯過了嗎? PrintDialog的任何替代方法?

代碼:

Paragraph myParagraph = new Paragraph(); 
myParagraph.Margin = new Thickness(0); 
**myParagraph.BreakPageBefore = false;** 
foreach (string line in textToPrint.Split(new string[] { Environment.NewLine }, StringSplitOptions.None)) 
{    
    myParagraph.Inlines.Add(new Run(line));    
} 
flowDocument.Blocks.Add(myParagraph); 
DocumentPaginator paginator = ((IDocumentPaginatorSource)flowDocument).DocumentPaginator; 
printDialog.PrintDocument(paginator, "Test Page"); 

回答

0

新的打印作業(文檔)開始一個新的頁面,據我所知。如果您不希望分頁符收集您想要打印的所有值並打印出來。

+0

如果您不想分頁符收集所有想要打印的值,然後打印出來。我應該在C#/ WPF本身中使用Win32 API嗎? – user489686

+0

每次用戶按下按鈕時,您正在創建文檔。相反,創建一個文檔並將數據添加到該文檔。所有數據添加完畢後,打印文檔。 –

+0

我需要在每次保存後打印。即使我嘗試重新使用Document對象並僅打印新內容,我也必須確保它定位到相同的頁面,並且不會在兩者之間插入分頁符。目標打印機最有可能是點陣打印機。 – user489686