我正在使用 Windows 窗体使用 C# 和 Microsoft 报表查看器生成身份证。一切正常,除了我在 Microsoft 报表查看器中找不到列重复方向。
当前场景
我的报告纸张尺寸是 A4。每个页面最多可以显示 10 张单独的卡片。页面中有 2 列。每列显示 5 张牌。如图所示,它正在生成卡片。列重复方向是垂直的。它首先列出第 1 列 (1-5),然后列出第 2 列 (6-10)。
我的需求
我希望报告列的重复方向像下图一样水平。首先显示 1,然后显示 2、3 和 4,依此类推。
为什么我要水平显示而不是垂直显示?
它会节省纸张。例如,如果用户根据当前场景只生成 4 张身份证,它将在第 1 列生成 4 张卡片,并且整个页面空间都被浪费了,因为我无法重新使用剩余空间。
通过水平重复列方向,将显示 4 张卡片,如第 1 列中的卡片 1 和 3,以及第 2 列中的卡片 2 和 4。然后我可以剪下这张纸,以后再用。
我搜索了很多,但找不到任何解决方案。任何建议、评论或链接都会有所帮助。我不能使用任何其他报告。提前致谢。
最佳答案
创建矩阵
将您的行分组定义为
=Ceiling(Fields!CardNo.Value/2)
将您的列分组定义为
=Fields!CardNo.Value Mod 2
您的报表设计将如下所示。 外部组仅出于说明目的而显示,但您可以将其删除。
现在当您运行报表时。你会得到你想要的结果
没有任何分组页眉和页脚。您的报告输出将是
关于c# - Microsoft 报表查看器中的列重复方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34876013/