Novacode DocX - 在正确的位置插入表格

时间:2017-10-25 21:12:09

标签: c# novacode-docx

我有一个包含多个段落的文档,一个表格,然后是几个段落。假设该表有三列和两行,其中第一行是标题,第二行需要为数据集合中的每个项重复。此外,可以对数据集合中的每个项目重复该表格。

我将文档加载到Novacode.DocX对象中,然后处理Paragraph集合中的每个段落,根据某些指令将段落附加到新的DocX对象。说明可能表明这些段落是有条件的或重复的。

在我遇到一张桌子之前一切正常。表格中的每个单元格都表示为段落集合中的段落(或段落)。唯一区别的属性是段落的ParentContainer。当我遇到表中包含的段落时,我尝试将表附加到新文档中,但这绝不会在正确的位置结束。似乎没有任何方法可以确定文档在文档中的位置。我试图找到Tables集合中的项目与Paragraphs集合中的项目之间的连接,但似乎没有任何东西。此外,Tables集合似乎没有与其在文档中的位置相关的任何属性。

我确信这不会很难。我错过了什么?

1 个答案:

答案 0 :(得分:0)

我在解决有时看似含糊不清的问题时遇到了类似的问题 使用Novacode插入/附加图像并开始将图像放入表格中 更好地控制文档中的放置和对齐。

在构建每个表后立即使用InsertTable()命令发现了显着的改进,然后是InsertParagraph([string])

并非所有建筑物的文件都包含在表格中。 所以线性序列

//After building each table.
Novacode.DocX.InsertTable([nameoftable])

// For text content outside of tables 
Novacode.DocX.InsertParagraph([string])

在我的案例中使用上述内容可以实现完全线性的序列。