我有一个功能,可以在word中为丰富的内容控件添加文本。我通过搜索标签成功获得了内容控制。然后我添加带有换行符的文本到内容控件,但它不接受换行符。它只是将文本添加到一行。
我会多次运行该函数(如下面的代码所示),并在de content control中的新行上添加每个新文本。
我已经尝试了几个选项,就像在stackoverflow上给出一样,但它仍然不起作用。你能帮我吗?
//Insert Text to manual.
public static WordprocessingDocument InsertText(this WordprocessingDocument doc, string contentControlTag, string text)
{
SdtElement element = doc.MainDocumentPart.Document.Body.Descendants<SdtElement>().FirstOrDefault(sdt => sdt.SdtProperties.GetFirstChild<Tag>()?.Val == contentControlTag);
if (element == null)
throw new ArgumentException($"ContentControlTag \"{contentControlTag}\" doesn't exist.");
element.Descendants<Text>().First().Text = text;
return doc;
}
答案 0 :(得分:1)
除非您的字符串以换行符或段落符号开头,否则添加到内容控件的任何内容都将被简单地附加到与已包含最后一个字符的任何行相同的行。而且,虽然您已将其描述为“丰富的内容控件”,但您可能会再次确认是这种情况 - 根据其配置方式,纯文本内容控件也可以接受分段符号