我需要在添加完所有报告数据后找出控件所在的页面。根据上面添加了多少数据(例如表格行),控件可以在第1,2或3页上。需要页码的原因是要找出该控件是否跨越两页。如果确实如此,那么我想轻推它以确保它不会分成两页
由于有问题的控件是在ReportStart
事件期间动态添加的,因此我无法确定哪个页面最终将会结束,因为尚未添加报表数据。
我很确定我能够在Detail_BeforePrint
事件中执行此操作,因为它会针对报告的每个页面触发,this.PageNumber
会显示当前页面。
在Detail_BeforePrint
内,我可以使用以下命令找到控件:
var myControl= this.Detail.Controls["MyControl"];
但myControl
没有任何可能暗示其所在网页的属性。有人可以帮忙吗?
我正在使用Active Reports 6和Visual Studio 2010
答案 0 :(得分:0)
您要求的内容无法找到。您可以从报告中检索pageNumber,但这会告诉您控件将打印到的最后一页。该控件没有页码,因为它可以在多个页面上打印。
然而,尽管如此,可以使用KeepTogether属性获得所需的效果。如果将其设置为true,AR将始终尝试将控件保留在单个页面上并自动为您移动。并且它处理控件的长度可能超过单个页面的情况,因此不需要移动,因为这将不起作用。希望这会有所帮助。