These two clauses contradict: "How can I print everything within the Scroll Viewer?" and "I'm using WPF MVVM pattern". If you
really used MVVM, you would print not the content of the scroll viewer and not the window; you would print the data of the Model. MVVM Model comes in two flavors: object-oriented approach or data-centric approach. In both cases you have data; either describing the real state content of the data content accessed via the data access layer. See
http://en.wikipedia.org/wiki/MVVM[
^].
You can use data to compose XPS document out of it which can be printed. Please see
http://msdn.microsoft.com/en-us/library/ms742418.aspx[
^]. It can resemble your window as much as you can but certainly will not include limitations of the vertical size typical for the on-screen window and scroll controls :-).
—SA