GetFieldNames

MailMerge.GetFieldNames method

Возвращает коллекцию имен полей слияния, доступных в документе.

public string[] GetFieldNames()

Примечания

Возвращает полные имена полей слияния, включая необязательный префикс. Не устраняет дублирующиеся имена полей.

При каждом вызове создается новый массив строк.

Включает имена полей «усы», еслиUseNonMergeFields являетсяистинный.

Примеры

Показывает, как получить имена всех полей слияния в документе.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

builder.InsertField(" MERGEFIELD FirstName ");
builder.Write(" ");
builder.InsertField(" MERGEFIELD LastName ");
builder.InsertParagraph();
builder.InsertField(" MERGEFIELD City ");

DataTable dataTable = new DataTable("MyTable");
dataTable.Columns.Add("FirstName");
dataTable.Columns.Add("LastName");
dataTable.Columns.Add("City");
dataTable.Rows.Add(new object[] { "John", "Doe", "New York" });
dataTable.Rows.Add(new object[] { "Joe", "Bloggs", "Washington" });

// Для каждого имени MERGEFIELD в документе убедитесь, что таблица данных содержит столбец
 // с тем же именем, а затем выполнить слияние.
string[] fieldNames = doc.MailMerge.GetFieldNames();

Assert.AreEqual(3, fieldNames.Length);

foreach (string fieldName in fieldNames)
    Assert.True(dataTable.Columns.Contains(fieldName));

doc.MailMerge.Execute(dataTable);

Смотрите также