word这种带combox选择框的,可以做成模版,然后填充数据以后选中吗?
循环填充,如果list没有数据,会显示模版变量在上面,可以不显示吗
如果list为empty,正常输出空就好了,为空的时候,变量显示在上面
word这种带combox选择框的,可以做成模版,然后填充数据以后选中吗?
循环填充,如果list没有数据,会显示模版变量在上面,可以不显示吗
如果list为empty,正常输出空就好了,为空的时候,变量显示在上面
@SalesDhorde 在执行邮件合并时,您可以使用 IFieldMergingCallback 添加 ComboBox:
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.insertField(" MERGEFIELD ComboBoxField ");
doc.getMailMerge().setFieldMergingCallback(new HandleMergeFieldInsertComboBox());
doc.getMailMerge().execute(new String[]{"ComboBoxField"}, new Object[] { "Option1, Option2, Option3" });
doc.save("output.docx");
static class HandleMergeFieldInsertComboBox implements IFieldMergingCallback {
@Override
public void fieldMerging(FieldMergingArgs args) throws Exception {
if ("ComboBoxField".equals(args.getFieldName())) {
DocumentBuilder builder = new DocumentBuilder(args.getDocument());
// Move the cursor to the merge field
builder.moveToMergeField(args.getFieldName());
String[] options = args.getFieldValue().toString().split(",");
// Insert a ComboBox form field
builder.insertComboBox(args.getFieldName(), options, 0);
}
}
@Override
public void imageFieldMerging(ImageFieldMergingArgs args) throws Exception {
// Do nothing
}
}
如果执行后有未使用的 regiongs,可以设置清理选项。请查看我们的文档: Clean Up Before or During a Mail Merge Operation|Aspose.Words for Java