Brian Hartman has created a sample apllication with the ReportViewer built-in print functionality, people often wish to implement their own version to provide significant customizations or a deeper integration with their application. Great for all the developers who want more than the default reporting services. Attached to his post is a sample PrintDocument that will programmatically print a given ServerReport or LocalReport.
Read it here:
http://blogs.msdn.com/brianhartman/archive/2009/02/27/manually-printing-a-report.aspx
c# programmer