如何从 Stimul Report 打印中的代码动态更改页面高度?

How to change the page height dynamically from the code in Stimul Report prints?

我在我的 Windows 表单 (C#.net) 中使用 Stimul Report 组件,以在我的程序中打印发票。结果,由于货物数量不同,印刷的纸张会具有不同的高度。我使用的是 80mm 纸张,不是标准 A4/Letter 尺寸。货物在我的代码中作为名为 dtDataTable 传递。

report.RegData(dt);
int pageNewHeight = ((dt.Rows.Count)*4) + 10;
report.Pages[0].Height = pageNewHeight;

report.Print(false, printSet);

它仍然不起作用,我得到 .rmt 文件纸张大小。有什么想法吗?

问题已解决; 我们应该在编译之前指定页面高度,但是在上传 .mrt 文件之后。 所以代码的顺序是:

        StiReport report = new StiReport();
        report.Load("c:/s80.mrt");

        report.RegData(dt);
        int pageNewHeight = (dt.Rows.Count * 4) + 10;
        report.Pages[0].Height = pageNewHeight;
        report.Compile();