首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将FixedDocument作为报告引擎?

将FixedDocument作为报告引擎?
EN

Stack Overflow用户
提问于 2012-10-08 14:05:24
回答 1查看 1.3K关注 0票数 2

我想知道如何使用WPF的FixedDocument作为报告引擎。有没有人有这样的经验?可能的陷阱是什么?

我正在开发的一个应用程序必须打印一些报告。这些都是订单、发票--也就是说,没有什么不寻常的。最近,我研究了FlowDocumentFixedDocumet的概念,我发现,从理论上讲,FixedDocumet正是我所需要的。

然后,我绘制了一个示例报告,并面临一个问题:

代码语言:javascript
复制
    <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,有没有什么现成的方法可以做到这一点

如果不是,如何在运行时定义要呈现当前项是否在页面外?只要固定页面只是一组UIElements,我就可以动态地生成它们。

另外,我知道不同的商业报告引擎,问题不是关于它们的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-08 15:59:05

我的经验表明,当涉及到打印/定制解决方案时,FixedDocument完全没有用。

首先,默认情况下,它甚至不支持打印到多个页面。您需要具有该功能的自定义DocumentPaginator。

我的两个观点是,不要使用它。使用ReportViewer。非常灵活。

用FixedDocument做任何事情都是可能的,但这样做的成本/时间是不值得的。这几乎等同于比较ASM和高级语言。是的,你可以在ASM中做任何事情,但这是不值得的。

FixedDocument不能被称为报告引擎,因为它没有任何“类似引擎”的功能。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12776117

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档