添加表会导致嵌套表

时间:2014-09-21 02:54:09

标签: c# .net ms-word

我正在尝试将连续表添加到来自C#(VS 2013,.NET 4.5,Word 2013)的word文档中,并且下面的代码将第二个表嵌套在第一个表中。我正在尝试创建在两个书签之间添加的不同表格(我已经使用定义为单个书签的范围对其进行了测试)。

我拥有代码和源/目标文档格式,因此我可以根据需要进行任何更改,但内容都是动态的,因此我无法为每个表创建预定义的书签。

代表我的问题的代码子集如下:

Word.Application oWord = new Word.Application();
Word.Document oTargetWordDoc = oWord.Documents.Open(WordTemplateFile);

object oBookmarkBegin = "bookmark_begin";
object oBookmarkEnd = "bookmark_end";

object oBookmarkBeginRange = oTargetWordDoc.Bookmarks.get_Item(ref oBookmarkBegin).Range.Start;
object oBookmarkEndRange = oTargetWordDoc.Bookmarks.get_Item(ref oBookmarkEnd).Range.Start;

Word.Range oRange = oTargetWordDoc.Range(ref oBookmarkBeginRange, ref oBookmarkEndRange);

Word.Table wtTable1 = oRange.Tables.Add(oRange, 1, 2);
wtTable1.Cell(1,1).Range.Text = "t1/r1/c1";
wtTable1.Cell(1,2).Range.Text = "t1/r1/c2";

Word.Table wtTable2 = oRange.Tables.Add(oRange, 1, 2);
wtTable2.Cell(1,1).Range.Text = "t2/r1/c1";
wtTable2.Cell(1,2).Range.Text = "t2/r1/c2";

// other goo/close/save/etc...

输出如下:

t1/r1/c1|t1/r1/c2
t2/r1/c1|t2/r1/c2| <-- nested within column 1 in the first table (notice trailing | marking beginning of first table's second column)

显然,我想要两个不同的表,没有嵌套,导致:

t1/r1/c1|t1/r1/c2
t2/r1/c1|t2/r1/c2

非常感谢任何有关此事的协助!

0 个答案:

没有答案