[Expand]General Information
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Collapse]Office File API
  Demo Application
  Redistribution and Deployment
 [Collapse]Spreadsheet Document API
   Product Structure
   Getting Started
  [Expand]Spreadsheet Document
   Supported Formats
  [Expand]Cell Basics
  [Expand]Spreadsheet Formulas
   Defined Names
   Data Binding
  [Expand]Pivot Tables
  [Expand]Shapes, Pictures, Charts
  [Collapse]Mail Merge
    Mail Merge Overview
    Template Document
    Mail Merge Functions
  [Expand]Examples
 [Expand]Word Processing Document API
 [Expand]PDF Document API
 [Expand]Excel Export Library
 [Expand]Snap Report API
 [Expand]Zip Compression and Archive API
 [Expand]Barcode Generation API
 [Expand]Unit Conversion API
 [Expand]API Reference
[Expand]Reporting
[Expand]Report and Dashboard Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]eXpress Persistent Objects
[Expand]CodeRush
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)

Mail Merge Overview

The Mail Merge functionality enables you to automatically generate a set of documents based on a single template and include unique data values retrieved from a data source into each document. This feature can be useful for a variety of business requirements, such as personalizing letters, and composing catalogs and reports.

Expanded Mail Merge Process

To perform a mail merge, you need a template and a data source.

  • A template is a document containing placeholders for the information that will be merged from a data source (mail merge fields). See the Template Document topic to learn more about mail merge templates.
  • A data source contains data that will be merged into fields in a template to create merged documents. A data source can be any object that exposes the IList interface, such as a System.Collections.ArrayList or a System.Data.DataTable. So, you can create a mail merge data source at runtime, or retrieve data from an external database using data adapters.

    The data source is bound to the template using the Workbook.MailMergeDataSource and Workbook.MailMergeDataMember properties of the template workbook.

Use the template workbook's Workbook.MailMergeOptions property to get access to the mail merge options.

The template workbook's Workbook.GenerateMailMergeDocuments method finalizes the mail merge process. It returns a collection of resulting workbooks (if the Single Sheet or Multiple Sheets mail merge mode is used, the collection will contain a single workbook). You can open the resulting workbook or save it to a file or stream.

Expanded See Also

Is this topic helpful?​​​​​​​