• 締切済み

ASP.NETでの帳票

VisualStudio.NET 2003、VB.NETを使ってASP.NETのシステムを作成しています。 帳票の作成について教えてください。 DBから取得したリストを全件印刷したいのですが、1ページ20件ずつレイアウトして印刷したいのです。 最初はDataGridを使うと楽かと思っていましたが、20件ずつ複数ページになるようにするにはどうしたらよいのかわからずに困ってしまいました。 どうしようもなければ、 Response.WriteでHTMLのタグ出力をしていくしかアイディアが浮かびません。 でもそうすると、出力したタグはHEADタグの上に出てきてしまいました。 良い方法をご存知の方がいましたら教えていただけますでしょうか。 宜しくお願いします。

みんなの回答

回答No.2

> ただ今回やりたいことは、20件ずつ改ページしながら全件を表示したいのです。 主要な全てのブラウザに対応しているかわかりませんが、スタイルシートで指定できます。 http://www.tagindex.com/stylesheet/page/page_break.html これと Response.Write を組み合わせて、自力で html を出力するようにすれば大丈夫かと。 Response.Write で思った場所に html を出力できないのは、思った場所で適切に書いてないからじゃないでしょうか。 http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jscript7/html/jsconDisplayingFromASPNET.asp

haru54
質問者

お礼

CSSで、page-break-after:always とすると改ページができることは知っていました。 リスト形式の帳票のページを、ASP.NETのWebコントロールでスムーズにできないものかと考えていたのですが、やはりResponse.Writeを使用してHTMLタグを出力しながら作成することにしました。 VSで作成しており、vbファイルのPage_Loadのプロシージャに処理を記述すると、aspxファイルで記述しているHTMLタグより先に出力されてしまうようなので、aspxファイルにはタグを書かず、全てPage_Loadプロシージャで出力するようにしました。 若干、効率の悪い気もしていますが、今の私の技術だとこれが精一杯です。 回答、ありがとうございました。

回答No.1

> 最初はDataGridを使うと楽かと思っていましたが、20件ずつ複数ページになるようにするにはどうしたらよいのかわからずに困ってしまいました。 これは? http://www.atmarkit.co.jp/fdotnet/aspexp/aspexp07/aspexp07_02.html

参考URL:
http://www.atmarkit.co.jp/fdotnet/aspexp/aspexp07/aspexp07_02.html
haru54
質問者

補足

DataGridを使用すると確かに20件ずつ表示することはできます。 ただ今回やりたいことは、20件ずつ改ページしながら全件を表示したいのです。 その方法をご存知でしたら是非ご教授ください。 よろしくお願いします。

関連するQ&A

専門家に質問してみよう