In my Winforms app I have a GridView and the option for users to print the data contained in the GridView.
The GridView is dynamic in that the number of columns of data varies by user and their department (some users will see 5 columns of data, some will get 10, some will get 13, etc.).
When printing, due to the unknown number of columns, all the data/columns sometimes will appear efficiently on an 8.5 X 11 sheet of paper in portrait mode and sometimes not. Sometimes the paper size will have to be changed or the orientation.
However, if the number of columns is large, even if the orientation is changed to landscape and paper size changed to legal, the data won't display well on the printed report. It'll either condense/truncate each column to fit on a printed page, or some columns just don't get printed at all (i.e. columns 1 thru 7 will display on the printed page, but columns 8 thru 15 are omitted from the printed results.)
When printing the GridView's data, 3 options are available in PrintPreview->Print Settings: FitPageWidth, NoFit and NoFitCentered. Neither of these options produce a report in which all the data/columns are readable.
Is there a way to have all columns printed at their actual size, in that if the number of columns is too many to fit on a single sheet of paper, the first "batch" of columns will print on "page 1" and the second batch on page 2? (Similar to the "No Scaling" print option in Excel.)
Internally, when printing the GridView's data, the GridView's data is passed to the Associated Object of a RadPrintDocument. That RadPrintDocument is then passed to the Document property of a RadPrintPreviewDialog.
Thanks much for all advice with this matter.