原創(chuàng)|其它|編輯:郝浩|2012-08-15 22:21:50.000|閱讀 1236 次
概述:在使用Aspose.Words控件來(lái)進(jìn)行郵件合并時(shí),如果需要將數(shù)據(jù)進(jìn)行一些處理,比如在姓名前面添加特殊符號(hào),對(duì)于編碼的程序進(jìn)行詳細(xì)的介紹。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
在使用Aspose.Words控件來(lái)進(jìn)行郵件合并時(shí)(另見:Aspose.Words控件操作實(shí)例—郵件合并功能概述),如果需要將數(shù)據(jù)進(jìn)行一些處理,比如在姓名前面添加特殊符號(hào),我們可以采取添加新的程序代碼的方式來(lái)完成,下面是詳細(xì)的說(shuō)明:
新增合并域事件
新增合并域事件,事件名稱為MailMerge_MergeField。
doc.MailMerge.MergeField += new Aspose.Words.Reporting.MergeFieldEventHandler(MailMerge_MergeField);
宣告郵件合并事件
宣告郵件合并事件MailMerge_MergeField,其中重要的參數(shù)為e,可以取得郵件合并過(guò)程中的所有數(shù)據(jù)。
private void MailMerge_MergeField(object sender, Aspose.Words.Reporting.MergeFieldEventArgs e)
取得郵件合并資料
運(yùn)用e變量可以取得郵件合并數(shù)據(jù),其中e.FieldName為目前郵件合并的域名;e.FieldValue為目前郵件合并的域值,而運(yùn)用e.Text可以改變其值。
if (e.FieldName == "學(xué)生姓名" )
if (e.FieldValue.ToString()=="張三")
e.Text="*張三";
完整程序代碼
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Aspose.Words;
using Aspose.Words.Reporting; //在使用郵件合并功能時(shí)需引用此命名空間。
namespace MergeField
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Document doc = new Document("MergeTemplate.docx");
doc.MailMerge.MergeField += new Aspose.Words.Reporting.MergeFieldEventHandler(MailMerge_MergeField);
doc.MailMerge.Execute(GetDataSource());
doc.Save("MergeResult.docx");
}
//傳回郵件合并的數(shù)據(jù),傳回的數(shù)據(jù)可以是下列型態(tài):DataSet、DataTable、DataView、DataSet、IDataReader。
private DataTable GetDataSource()
{
DataTable table = new DataTable();
table.Columns.Add("學(xué)生姓名");
table.Columns.Add("電話");
table.Rows.Add("張三","03-5555555");
table.Rows.Add("李四","03-5522555");
table.Rows.Add("王武","03-5554455");
return table;
}
private void MailMerge_MergeField(object sender, Aspose.Words.Reporting.MergeFieldEventArgs e)
{
if (e.FieldName == "學(xué)生姓名" )
{
if (e.FieldValue.ToString()=="張三")
e.Text="*張三";
}
}
}
}
小結(jié)
本篇介紹有關(guān)Aspose.Words控件件在郵件合并上的功能,對(duì)于要從系統(tǒng)輸出報(bào)表時(shí),郵件合并的功能就顯得非常重要。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)