2

FixedDocumentレポートエンジンとしてWPFを使用することについて疑問に思っています。誰かそのような経験がありますか?考えられる落とし穴は何ですか?

私が現在開発しているアプリケーションは、いくつかのレポートを印刷する必要があります。これらは注文、請求書です。つまり、異常なことは何もありません。最近、私は概念を調べましたが、理論的には、私が必要としているものを見つけましFlowDocumentた。 FixedDocumetFixedDocumet

それよりも、サンプルレポートをスケッチして、問題に直面しました。

    <PageContent>
        <FixedPage Width="793.76" Height="1122.56" Margin="50,50,50,50" PrintTicket="">
            <ListView Width="Auto" Height="Auto" ItemsSource="{Binding}">
                <ListView.View>
                    <GridView>
                        <GridViewColumn Header="First name" 
                                        Width="200"
                                        DisplayMemberBinding="{Binding FirstName}"/>
                        <GridViewColumn Header="Last name" 
                                        Width="200"
                                        DisplayMemberBinding="{Binding LastName}"/>
                    </GridView>
                </ListView.View>
            </ListView>
        </FixedPage>
    </PageContent>

固定ドキュメントのフッター

長いテーブルの種類のデータを複数のページに分割するレポートには、一般的な方法があります(たとえば、1000アイテムの請求書)。また、通常、ユーザーには、各ページでテーブルヘッダーを繰り返すか、繰り返さないかを選択できます。

FixedPage/でこれを行うためのすぐに使える方法はありますItemsControlか?
いいえの場合、実行時にレンダリングされる現在のアイテムがページ外であることを定義するにはどうすればよいですか?固定ページがUIElementのセットである限り、動的に生成できます。

PS私はさまざまな商用レポートエンジンについて知っていますが、質問はそれらについてではありません。

4

1 に答える 1

3

私の経験では、FixedDocumentは印刷/カスタムソリューションに関しては完全に役に立たないことがわかっています。

まず第一に、デフォルトでは複数ページへの印刷もサポートしていません。その機能にはカスタムDocumentPaginatorが必要です。

私の2セントはそれです、それを使わないでください。ReportViewerを使用します。多くの柔軟性。

FixedDocumentですべてを行うことは十分に可能ですが、コスト/時間はそれだけの価値はありません。ASMと高級言語を比較するのとほとんど同じです。はい、ASMですべてを行うことができますが、それだけの価値はありません。

FixedDocumentには「エンジンのような」機能がないため、実際にはレポートエンジンと呼ぶことはできません。

于 2012-10-08T07:59:05.460 に答える