我正在構建Silverlight 4應用程序。這個應用程序將打印一個ItemsControl的內容。此ItemsControl使用ItemTemplate呈現綁定到控件的項目。總而言之,我有500件必然會受到控制的物品。Silverlight 4 - 打印項目控件
奇怪的是,當我試圖打印ItemsControl時,它似乎在某個點後切斷。我無法分辨它何時被切斷。我只知道它會被切斷。我有一個預感它與虛擬化有關。但是,我不知道如何克服這一點。目前,我正在打印像這樣的ItemsControl:
private void printHyperlink_Click(object sender, RoutedEventArgs e)
{
PrintDocument printDocument = new PrintDocument();
printDocument.BeginPrint +=
new EventHandler<BeginPrintEventArgs>(printDocument_BeginPrint);
printDocument.PrintPage +=
new EventHandler<PrintPageEventArgs>(printDocument_PrintPage);
printDocument.EndPrint +=
new EventHandler<EndPrintEventArgs>(printDocument_EndPrint);
printDocument.Print("My Items");
}
void printDocument_BeginPrint(object sender, BeginPrintEventArgs e)
{}
void printDocument_PrintPage(object sender, PrintPageEventArgs e)
{ e.PageVisual = myItemsControl; }
void printDocument_EndPrint(object sender, EndPrintEventArgs e)
{}
我在做什麼錯?我如何確保我的ItemsControl中的所有項目在呈現時都被打印?
+1,這是一個很好的問題。 – AnthonyWJones 2010-05-05 15:50:01
超過一頁的500個值是正確的?你確實將HasMorePages屬性設置爲true來表明這一點? – texmex5 2010-05-05 21:00:48