What I need is a DocumentPaginator derivation which is able to print a UserControl incl. bound data via its DataContext.
Means that whatever is displayed in a given UserControl shall be printed.
When, for example, a DataGrid (or ListView or any other control which breaks the page) is too large for the page, it shall be continued at the next page.
For this I have provided a very basic test project to show some data which has to be printed and splitted on multiple pages as content fits.
As this involves rendering (& stuff) anyway, I also want a preview of what will be printed (after splitting pages & all of that).
A while ago I have already tried to do this, but the solution was quite buggy and unreliable.
(I went through the visual tree, played with Visibility, Rendering, Cloning UserControls & more... a lot to do)
I expect a fully working solution without bugs. Please test thoroughly as I will test with more than that basic test project.
For more information on what I want, please also check out this post:
[login to view URL]
In the end it has to be extremely flexible.
I want to be able to just create a new UserControl, add a Binding and print it - like a Report.
Please allow selection of available printer[s] (check out PrintDialog) in the print-preview.
The interface should take a UserControl and associated VM.
Please contact me if you have any questions or doubts.