独自に作りこんだ印刷ロジックです。
ソースを参考にして改造してみてください。
//PrintDocumentオブジェクトの作成
System.Drawing.Printing.PrintDocument oPrintDocument = new System.Drawing.Printing.PrintDocument();
//PrintPreviewDialogクラスの作成
System.Windows.Forms.PrintPreviewDialog oPrintPreviewDialog = new System.Windows.Forms.PrintPreviewDialog();
//PrintDialogクラスの作成
PrintDialog oPrintDialog = new PrintDialog();
//PrintPageイベントハンドラ(印刷出力処理)
oPrintDocument.PrintPage += new System.Drawing.Printing.PrintPageEventHandler(this.oPrintDocument_PrintPage);
//デフォルト設定
oPrintDocument.DefaultPageSettings.Landscape = true; //横向き
//PrintDocumentを指定
oPrintDialog.Document = oPrintDocument;
//印刷の選択ダイアログを表示する
if (oPrintDialog.ShowDialog() == DialogResult.OK)
{
//OKがクリックされた時は印刷する
oPrintPreviewDialog.Document = oPrintDocument;
oPrintPreviewDialog.ShowDialog(); //プレビュー表示
//oPrintDocument.Print(); //いきなり印刷はこちら
}