注意:ここで紹介しているDataGridは、System.Windows.Forms名前空間のDataGrid(Windowsフォーム)です。System.Web.UI.WebControls名前空間のDataGrid(Webフォーム)ではありません。
System.Windows.Forms.DataGridコントロールに表示されているデータを印刷する方法を調べてみました。
MSDNにそのものズバリの「コード : DataGrid の印刷 (Visual C#)」「コード : データ グリッドを印刷する (Visual Basic)」という例が紹介されています。しかしこれらは残念ながら表示されている範囲のみしか印刷できず、それ以外を印刷するには、適当な位置までスクロールして印刷するという処理を繰り返す必要があります。しかしそれも正確に行うのは難いため、この方法は実用的とは言えないでしょう。
実際に良く使われている方法は、DataGridで表示しているデータを自分で描画して印刷する方法です。この方法はかなり手間がかかりますが、自由度が高く、融通が利きます。
ここではその方法を具体的には説明しません。しかし、このようにしてDataGridを印刷するためのクラスは数多く公開されています。以下にその幾つかを紹介させていただきますので、参考にしてください。
(この記事は、「.NETプログラミング研究」で紹介したものを基にしています。)
注意:この記事では、基本的な事柄の説明が省略されているかもしれません。初心者の方は、特に以下の点にご注意ください。