我需要一个占位符。一开始我想使用内容控件(Content Control)来解决,但是我遇到了一些问题。
然后我研究了在.docx中添加CustomXML,但因为i4i诉讼的缘故而放弃了这个方法。
然后我决定通过OpenXML SDK 2.0直接更改内容控件的文本,但即使如此标记了内容控件,该内容控件也不会消失。我猜测它只有在Word中进行更改时才知道文本已经更改。
或许我可以移除内容控件并替换为文本,但我担心这可能会带来格式和样式方面的问题,而且这也有点违背了内容控件的目的。
然后我开始想知道是否可以定义自己的占位符,让Word能够识别。也许通过“构建块(Building Blocks)”之类的方式。这个占位符除了易于使用OpenXML查找并且可被打上标记以便我知道要替换成什么之外,不需要做任何事情。我不太确定构建块可以做什么,但我希望它是可行的。
不确定哪种方法对我最好,但我需要:
a)易于在模板中放置的东西,也许是预定义的内容控件占位符,可以放置到想要的位置并按照自己的喜好进行样式设置。
b)添加数据后删除所有占位符,不再修改。保留在占位符中定义的样式/格式。
总之,我需要答案:
如何在OpenXML SDK中编辑内容控件(Content Controls),以便它们在添加文本后被删除。
-OR-
我能否为Word文档定义自己的OpenXML标记(tag),然后进行替换?