1

我在 Visual Studio 2005 的 VB.NET 中使用 Crystal Reports。

我有一个 List(Of Stuff),我根据对象的一个​​成员进行了排序。

我已经在调试器中验证了列表排序正确。

当我将列表定义为数据源时,如

rptDetails.Subreports.Item("rptSubReport").SetDataSource(theListOfStuff)

并查看报告,列表是相反的。

因此,为了寻找解决方法,我说:“好的,我会在绑定之前对列表进行倒序排序。”

该列表仍然出现在报告中。

所以发生了一些事情,我认为它在报告定义中,因为我不知道排序顺序还可以在哪里更改。有什么建议么?

(哦,忘了说我使用 VS 中的报表设计工具来布置报表。)

一如既往地感谢。

4

1 回答 1

2

此链接可能会有所帮助:MSDN 链接

这就是我所怀疑的:
CR 不保留任何先前对数据集的排序。它的默认排序基于升序的第一列。您必须将排序标准重新应用于 CR。

你可以试试:
Dim subRpt as ReportDocument
subRpt = rptDetails.Subreports.Item("rptSubReport")
subRpt.DataDefinition.SortFields(0).SortDirection = CrystalDecisions.Shared.SortDirection.DescendingOrder

于 2009-12-05T08:06:27.693 回答