您好我正在使用c#从winforms应用程序自动化word文档。该文档包含我从我的代码中填写的许多邮件合并字段。这适用于固定字段。
但是,该文档包含一些在运行时重复n次的重复部分。有人能告诉我如何创建可以多次插入的某种块吗?
我尝试在两个书签之间插入文本,但这会弄乱页面格式。
非常感谢任何建议。
编辑:
以下功能是我用来将数据合并到单词模板上的功能。 Dictionary包含第一个字符串中的字段名称和第二个字符串中的内容。
用户将获得一个示例文字模板,其中包含文档中的所有字段代码,然后可以自行更改字段和样式的顺序。
public static void CreateBody(Application wApp, Document wDoc, Dictionary<string, string> fieldContent)
{
//Loop through fields in document body.
foreach (Field mergeField in wDoc.Fields)
{
//Find mailmerge fields in the Word document body.
if (mergeField.Type == WdFieldType.wdFieldMergeField)
{
//Get the fieldName from the template file.
string fieldText = mergeField.Code.Text;
string fieldName = GetFieldName(fieldText);
if (fieldContent.ContainsKey(fieldName))
{
mergeField.Select();
if (fieldContent[fieldName] != "")
{
wApp.Selection.TypeText(fieldContent[fieldName]);
}
else
{
//If the field has no content remove the field text from the word file.
wApp.Selection.TypeText(" ");
}
}
}
}
现在我正在寻找一种方法来重复模板中的一组邮件合并字段,并将它们多次插入,每个记录一次。