根据MSDN(强调我的):
如果Temporary属性为true,则当用户键入控件时 ContentControl会自动删除,或者当控件中的文本以编程方式更改时 。当ContentControl自动从文档中删除时,控件中的文本仍保留在文档中。
它适用于“当用户键入控件时”使用Word编辑器,但不适用于我在(C#)代码中更改文本时。我的代码如下。
制作临时标签
static void MakeTagsTemporary(List<Tag> tagList)
{
tagList.ForEach(x => x.Parent.Append(new TemporarySdt() { Val = true }));
} mainPart.Document.Save();
我专门保存以接受内容控制临时更改,但没有效果。
编辑文字
static void ApplyProductGrid(MainDocumentPart mainPart, Plan pl, List<Tag> tagList)
{
foreach (Tag tagitem in tagList)
{
string GridValue = pl.FormattedTags.Where(x => x.Key == tagitem.Val).Select(x => x.Value).FirstOrDefault();
tagitem.Parent.Parent.Descendants<Text>().FirstOrDefault().Text = GridValue;
}
}
第tagitem.Parent.Parent.Descendants<Text>().FirstOrDefault().Text = GridValue;
行正在执行其工作,它更新了值,但未删除内容控制。
当我从单词编辑内容时,Content Control将被删除。