/ C#, Silverlight

Silverlight4は簡易的な帳票出力に対応していて、UIElementを丸ごとプリンタに送り出せることは知っていたのですが、複数ページの出力はどうやるのか、いまいちイメージが沸かなかったので試してみることに。

PrintPageイベントがページ単位に発動されるのが混乱を招く感じですが、基本的にはページ毎にUIElementを設定してあげれば良い模様。
多少汎用的に書くとしたら、以下のような感じに書けば良いかと。

このコードでは、テキストボックス txtPage1、txtPage2 をそれぞれ別ページに出力していますが、任意のUIElementを設定してあげれば、それがページのコンテンツになるという仕組みです。
ページコンテンツの中身は如何様にもカスタマイズできてしまうわけだし、プレビューの仕組みもそれほど難しくないと思われるので、このレポーティング機能、案外業務アプリでも使えるかもしれません。



コメントを残す

メールアドレスが公開されることはありません。