- - PR -
初めまして★印刷の設定で困ってます(>o
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2002-09-20 04:28
皆様はじめまして。
現在C#でのプログラム開発を行っているのですがCrystalReportViewerから印刷を行う際に用紙設定が上手くいかず困っています。 例えば、CrystalReportのプリンタの設定を『A4横』に設定しているとき、実行時CrystalReportViewerの印刷ボタンを押すと、印刷ダイアログが表示され、そのまま印刷をクリックすると『A4縦』の用紙にプリントされてしまいます。 印刷ダイアログのプリンタのプロパティの変更方法をご存知の方いらっしゃいましたら、お返事ください。 ぜひ皆様のお力をお借りしたく投稿いたしました。 宜しくお願い致します。 |
|
投稿日時: 2002-09-20 11:43
はじめまして!! りさっぺさんへ
CrystalReportViewerを利用しての印刷(PrintReportメソッド)は、 Windows の標準の [印刷] ダイアログ ボックスの設定を元に印刷され ます。自動的に印刷方向および用紙指定を行う場合、ReportDocument コントロールを併用します。 例)クリスタルレポートでA4縦デザインのレポートをA4横で印刷す る方法 @クリスタルレポートでA4縦サイズのレポートを作成します。 →レポート名は、CrystalReport1.rpt Aフォームに ReportDocumentコントロールを貼り付けます。 →Nameプロパティを crystalReport_設定に変更(説明の都合上) このとき、型指定の選択画面が表示されるので、迷わず 項番@で 作成した、CrystalReport1 を選択します。 B項番Aで貼り付けた crystalReport_設定 のプロパティを以下 のように変更します。 PrintOptions内のプロパティ PrintOrientationプロパティを、Landscape に変更 PaperSizeプロパティを、PaperA4 に変更 PaperSourceプロパティを、Auto に変更 PrintDuplexプロパティを、Default に変更 Cフォームに CrystalReportViewerコントロールを貼り付けます。 このコントロールの ReportSourceプロパティに項番Bで設定した 「crystalReport_設定」を指定します。 Dフォームにボタンを貼り付けクリックイベント内に以下の処理を追 加します。 crystalReport_設定.PrintToPrinter(1,false,0,0); PrintToPrinterメソッドはこんな感じです。 public virtual void PrintToPrinter (int nCopies , bool collated , int startPageN , int endPageN ); PrintToPrinterメソッドの引数は、 nCopies:印刷する部数を示します。 collated:ページを部単位で印刷するかどうかを示します。 startPageN:印刷する最初のページを示します。 endPageN:印刷する最後のページを示します。 上記で印刷が開始されます。 これで解決すると思いますが、確認をしてみて下さい。 |
1