向表中添加行时 Spire.DOC NullReference

问题描述

我正在使用 Spire.Doc (https://ibb.co/6sW9cjk) 生成 pdf。 在不同的子程序中,代码运行良好,但是当复制到另一个子程序(将提供与原始子程序相同的功能)时,代码会中断。

简单:

  1. 获取表格的第一行
  2. 用数据填充单元格
  3. 插入新行
  4. 重复单元有数据

一切都已正确初始化,doc 正在使用现有的 doc 文件作为模板来填充数据。

今天我注意到即使是原始代码也不起作用!同样的错误NullReferenceException 向表格添加第二行时。

如果我喜欢这个:

dri.Cells(0).AddParagraph()
dri.Cells(0).FirstParagraph.Text = itemsInReceiptCount

代码有效,但数据不在表格行中,而是在表格下方。 (https://ibb.co/y06nnpP)

有什么很酷的解决方法吗?一切正常,直到 (???)。

解决方法

嗯,我想通了。

不知何故,我在问题中提到的代码不起作用,但是(!)如果我这样做:

For Each i As TableCell In dri.Cells
   i.AddParagraph()
Next

代码可以工作,表格可以正常生成(但没有边框 - 易于修复),段落可以填充数据,没有异常或错误。

所以,我认为如果它有效,它会保持这样。