将字符附加到`docx`文档中的新页面

时间:2018-02-13 13:14:23

标签: c# openxml docx openxml-sdk

我正在尝试将字符串附加到新页面中docx文档的末尾。

以下是我现在使用的代码:

using (WordprocessingDocument wordDoc = WordprocessingDocument.Open(path/fname, true))

var body = wordDoc.MainDocumentPart.Document.Body;
var para = body.AppendChild(new Paragraph());
var run = para.AppendChild(new Run());

var txt = "Document Signed by User" + Environment.NewLine;
run.AppendChild(new Text(txt));

但它会将文本附加到文档的末尾而不是新页面。

修改

使用Daniel A. White提出的解决方案:

var para = body.AppendChild(new Paragraph());
var run = para.AppendChild(new Run());
var plc = run.AppendChild(new Break() { Type = BreakValues.Page });
var txt = "Document Signed by User: " + user.User" + Environment.NewLine;
plc.AppendChild(new Text(txt));

但我收到了这个错误:

  

非复合元素没有子元素

1 个答案:

答案 0 :(得分:1)

Break插入RunType设置为BreakValues.Page

run.AppendChild(new Break() { Type = BreakValues.Page });