Print cgridview without pagination

Greetings members. I am looking for a way to print out the entire cgridview. Methods/Steps I have taken are:

  1. A print button for the page: this loads the entire gridview (without pagination) and seems to be the most straightforward solution (despite the large number of rows). The only catch is that the user may click on the view button and be sent to a paginated gridview and then has to be directed back to the print page by clicking a print button otherwise the print page will have only the default pageSize rows.

  2. A hidden frame/div: Ideal solution since the print css can hide the paginated gridview and display the full gridview. The catch here is the sheer number of rows on the hidden gridview slows down the page load and is quite discomforting.

I would like to find out if these are the only options available, or if someone has come across/developed an innovative & suitable alternative. Thank you

Seriously? no ideas?