2

我在我的 Windows 窗体 (C#.net) 中使用刺激报告组件,在我的程序中打印发票。因此,由于商品数量不同,打印纸的高度也会有所不同。我使用的是 80 毫米纸张,而不是标准 A4/Letter 尺寸。货物以我的代码中的DataTable名称传递。dt

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

report.Print(false, printSet);

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

4

1 回答 1

1

问题已经解决了; 我们应该在编译之前指定页面高度,但在上传 .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();
于 2015-07-12T03:53:34.253 回答