如何使用C#将表移动到word文档中的下一页

时间:2013-08-24 07:18:46

标签: c# ms-word office-interop office-addins

我有一个单词模板。它有两个由xml节点组成的表。在少数情况下,我必须将第二个表移动到同一个word文档中的第二个页面。 有谁知道如何将表格移到下一页。

我知道只有移动行......

  Table tbl = aDoc.Tables[1];
    Row toMove = tbl.Rows[src];
    object beforeRow = tbl.Rows[dest];
    Row newRow = tbl.Rows.Add(ref beforeRow);
    toMove.Select();
    wrd.Selection.Copy();
    newRow.Select();
    wrd.Selection.Paste();
    toMove.Delete();
    newRow.Delete();

但我不知道如何将表格移到同一份文件的下一页.....

2 个答案:

答案 0 :(得分:0)

选择下一页范围:

 Set TopOfNextPage = rng.Duplicate.GoTo(What:=wdGoToPage, Which:=wdGoToNext)

并滚动到该范围:

http://msdn.microsoft.com/en-us/library/office/aa220751(v=office.11).aspx

答案 1 :(得分:0)

由于您使用的是模板,因此您可以将书签插入模板,然后使用范围使用书签范围在文档中跳转。 在Word中打开您的模板并添加书签。在Word2010中,转到“插入 - >书签”,在某处添加书签名称,例如'firstTable'。然后在C#代码中:

object pageBookmark = "firstTable";
Range range = doc.Bookmarks.get_Item(ref pageBookmark).Range;  
Microsoft.Office.Interop.Word.Table myTable = doc.Tables.Add(range, 5, 5);//enter what size you want ur table.

这将允许您将表格插入所需的部分,无论您的第一张桌子有多大。