【问题标题】:Split table column itext7拆分表列itext7
【发布时间】:2021-06-16 19:02:03
【问题描述】:

在 Windows 窗体应用程序中,我有一个表格,我可以在上面动态添加数据。如果列数太多,我需要在更多页面上拆分表格。 我添加此图像作为示例: As you can see I have too many columns and some of them are not visible

我想做这样的事情:在定义的列数(比如说 25 个)之后,将表格的内容拆分到另一个页面,其中包含剩余的数据。

这就是我创建表格的方式:

table = New Table(UnitValue.CreatePercentArray(tableCells)).UseAllAvailableWidth()

其中 tableCells 是一个整数,其中我有我的文档的所有列的数量。 然后我迭代并填充表格,添加页眉和页脚等等。

如果列数超过定义的数量,是否有选项或解决方法可以将“自动”表格拆分为多个页面?或者我应该创建另一个表,其中包含我为 main 所做的所有事情,并使用剩余列重复所有编码(即页脚、页眉、顶部段落页眉......)?

谢谢!

【问题讨论】:

    标签: vb.net pdf itext itext7


    【解决方案1】:

    是的,创建“分页列表”需要几个步骤

    如果您想要每页 25 个项目。只需将索引范围从 0 到 24. 返回到表中。然后只需在该点停止代码即可避免再次列出。

    For index as integer = 0 to 24
       SomeDatasource(index)
    next
    

    然后,听一个像http://example.com?page=1 这样的查询字符串。

    然后简单地计算该页面的偏移量 (25 * request.querystring("page"))

    只需将索引范围返回到表中,从 0 + 偏移量到 24 + 偏移量

    For index as integer = 0 +(25 * request.querystring("page")) to 24 + (25 * request.querystring("page"))
       SomeDatasource(index)
    next
    

    添加一个转到下一页的按钮。单击按钮时执行:

    response.redirect("/mypage.aspx?page=" & (request.querystring("page") + 1) )
    

    【讨论】:

    • 谢谢!但是我正在开发一个win表单应用程序,我使用itext7在win表单应用程序中生成pdf,不是aspx页面
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多