如何使用Word互操作在页面内放置分页符?

时间:2011-03-02 12:42:46

标签: c# ms-word office-interop

我有一个10x1表,我在Word表中生成。第1行和第5行中有标题(例如)。我需要第5行位于它自己页面的顶部。

我已尝试过所有内容以插入分页符:

table.Cell(row, 1).Range.InsertBreak(wdBreakType.wdPageBreak);

table.Cell(row, 1).Range.Characters.Last.InsertBreak(WdBreakType.wdPageBreak);

table.Cell(row, 1).Range.Collapse();
table.Cell(row, 1).Range.InsertBreak(WdBreakType.wdPageBreak);

以上工作都没有。看起来分页符在表格外面。显然这必须是内部工作,在表格的单元格中按 Ctrl + Enter 可以正确插入一个中断。

任何人都知道怎么做?

1 个答案:

答案 0 :(得分:0)

此代码适用于Word 2010和VS 2010:

        Word.Application app = new Word.Application();
        var doc = app.Documents.Add();
        var tbl = doc.Tables.Add(doc.Range(), 10, 2);
        tbl.Borders[Word.WdBorderType.wdBorderHorizontal].LineStyle = Word.WdLineStyle.wdLineStyleSingle;
        tbl.Borders[Word.WdBorderType.wdBorderHorizontal].Color = Word.WdColor.wdColorDarkRed;

        tbl.Borders[Word.WdBorderType.wdBorderVertical].LineStyle = Word.WdLineStyle.wdLineStyleSingle;
        tbl.Borders[Word.WdBorderType.wdBorderVertical].Color = Word.WdColor.wdColorDarkRed;

        tbl.Borders[Word.WdBorderType.wdBorderTop].LineStyle = Word.WdLineStyle.wdLineStyleSingle;
        tbl.Borders[Word.WdBorderType.wdBorderTop].Color = Word.WdColor.wdColorDarkRed;

        tbl.Borders[Word.WdBorderType.wdBorderBottom].LineStyle = Word.WdLineStyle.wdLineStyleSingle;
        tbl.Borders[Word.WdBorderType.wdBorderBottom].Color = Word.WdColor.wdColorDarkRed;


        tbl.Cell(6, 1).Range.InsertBreak(Word.WdBreakType.wdPageBreak);

        app.Visible = true;
        doc = null;
        app = null;