因为工作需要,经常起草一些通知、发函,内容结构相对固定,关键信息(如会议名称、时间、地点)反复出现,于是研究了一下如何在word中通过内容联动的方式,实现文件的自动生成。
通过内容控件,复制、粘贴(选择性粘贴——带链接粘贴),可以实现这种功能,但是这样生成的链接,是与文档的硬盘路径绑定的,一旦移动、复制文档,链接都会失效,需要alt+f9修改链接,较为繁琐。
通过xml绑定控件则可以完美解决这个问题。大致思路如下:
- 通过控件的方式,输入特定信息。
- 导入自定义xml,将控件绑定到xml上。
- 复制控件到需要的位置。
一、控件
- 文本内容控件适用于会议名称这样的变动信息,插入控件后,在控件中手动输入。
- 组合框内容控件与下拉列表内容控件类似,适用于主办单位、主送单位、会议酒店这样的信息,通过下拉方式选择,在控件属性中添加下拉选择项。组合框内容控件相较下拉列表控件,还可以自主输入内容。
- 日期选取器内容控件适用于会议日期这样的信息,手动选择日期。
基本上述三种控件就能满足需要。
设计模式下可以修改控件内容为空时的提示语。
属性则用于修改控件的基本属性,如增删调整下拉列表中的选择项,设置日期格式等。
二、绑定xml
1. 在文本编辑器中输入如下xml代码,保存,后缀修改为.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<DemoXMLNode xmlns="documents">
<会议名称></会议名称>
<主办单位全称></主办单位全称>
<会议时间></会议时间>
<会议地点></会议地点>
<酒店信息></酒店信息></DemoXMLNode>
2. 然后在开发工具中单击xml映射窗格,在弹出的侧边窗中添加新部件,选择前面保存的xml文件,添加。
添加后选择添加的xml文件“documents”,就能看到具体的xml节点
3. 将控件绑定到xml节点上。既可以先选择文档中已经插入的控件,然后右键相应xml节点,选择“映射到所选内容控件”;也可以选择直接插入需要的内容控件。
三、复制控件到需要的位置
将绑定xml节点的内容控件复制到其他需要重复的位置,控件之间就会自动建立关联,修改其中一个,另外一个控件的内容也会自动调整。
在设计模式下,联动的控件的边界是显示为黄色。