MergeDuplicateRegions

MailMerge.MergeDuplicateRegions property

Ottiene o imposta un valore che indica se tutte le aree di stampa unione documenti con il nome di un’origine dati devono essere unite durante l’esecuzione di una stampa unione con aree rispetto all’origine dati o solo la prima.

public bool MergeDuplicateRegions { get; set; }

Osservazioni

Il valore predefinito è falso .

Esempi

Mostra come lavorare con le aree di stampa unione duplicate.

public void MergeDuplicateRegions(bool mergeDuplicateRegions)
{
    Document doc = CreateSourceDocMergeDuplicateRegions();
    DataTable dataTable = CreateSourceTableMergeDuplicateRegions();

    // Se impostiamo la proprietà "MergeDuplicateRegions" su "false", la stampa unione influenzerà la prima regione,
    // mentre i MERGEFIELD del secondo verranno lasciati nello stato pre-unione.
    // Per unire entrambe le regioni in questo modo,
    // dovremmo eseguire la stampa unione due volte su una tabella con lo stesso nome.
    // Se impostiamo la proprietà "MergeDuplicateRegions" su "true", la stampa unione influirà su entrambe le regioni.
    doc.MailMerge.MergeDuplicateRegions = mergeDuplicateRegions;

    doc.MailMerge.ExecuteWithRegions(dataTable);
    doc.Save(ArtifactsDir + "MailMerge.MergeDuplicateRegions.docx");
}

/// <summary>
/// Restituisce un documento che contiene due aree di stampa unione duplicate (condividendo lo stesso nome nei tag "TableStart/End").
/// </summary>
private static Document CreateSourceDocMergeDuplicateRegions()
{
    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);

    builder.InsertField(" MERGEFIELD TableStart:MergeRegion");
    builder.InsertField(" MERGEFIELD Column1");
    builder.InsertField(" MERGEFIELD TableEnd:MergeRegion");
    builder.InsertParagraph();

    builder.InsertField(" MERGEFIELD TableStart:MergeRegion");
    builder.InsertField(" MERGEFIELD Column2");
    builder.InsertField(" MERGEFIELD TableEnd:MergeRegion");

    return doc;
}

/// <summary>
/// Crea una tabella di dati con una riga e due colonne.
/// </summary>
private static DataTable CreateSourceTableMergeDuplicateRegions()
{
    DataTable dataTable = new DataTable("MergeRegion");
    dataTable.Columns.Add("Column1");
    dataTable.Columns.Add("Column2");
    dataTable.Rows.Add(new object[] { "Value 1", "Value 2" });

    return dataTable;
}

Guarda anche