Text
İçindekiler
[
Saklamak
]FieldMergingArgs.Text property
Geçerli birleştirme alanı için belgeye eklenecek metni alır veya ayarlar.
public string Text { get; set; }
Notlar
Olay işleyiciniz çağrıldığında bu özellik şu şekilde ayarlanır:hükümsüz
.
Metni farklı bırakırsanızhükümsüz
, adres-mektup birleştirme motoru eklenecekFieldValue
birleştirme alanı yerine.
Metni herhangi bir dizeye (boş dahil) ayarlarsanız, dize belgeye birleştirme alanının yerine eklenir.
Örnekler
HTML belgeleri biçimindeki birleştirme verilerini işleyen özel bir geri çağırma ile adres-mektup birleştirmenin nasıl yürütüleceğini gösterir.
public void MergeHtml()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.InsertField(@"MERGEFIELD html_Title \b Content");
builder.InsertField(@"MERGEFIELD html_Body \b Content");
object[] mergeData =
{
"<html>" +
"<h1>" +
"<span style=\"color: #0000ff; font-family: Arial;\">Hello World!</span>" +
"</h1>" +
"</html>",
"<html>" +
"<blockquote>" +
"<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>" +
"</blockquote>" +
"</html>"
};
doc.MailMerge.FieldMergingCallback = new HandleMergeFieldInsertHtml();
doc.MailMerge.Execute(new[] { "html_Title", "html_Body" }, mergeData);
doc.Save(ArtifactsDir + "MailMergeEvent.MergeHtml.docx");
}
/// <summary>
/// Adres-mektup birleştirme, adı "html_" önekiyle başlayan bir MERGEFIELD ile karşılaşırsa,
/// bu geri çağırma, birleştirme verilerini HTML içeriği olarak ayrıştırır ve sonucu MERGEFIELD'ın belge konumuna ekler.
/// </summary>
private class HandleMergeFieldInsertHtml : IFieldMergingCallback
{
/// <summary>
/// Adres-mektup birleştirme verileri MERGEFIELD ile birleştirdiğinde çağrılır.
/// </summary>
void IFieldMergingCallback.FieldMerging(FieldMergingArgs args)
{
if (args.DocumentFieldName.StartsWith("html_") && args.Field.GetFieldCode().Contains("\\b"))
{
// Ayrıştırılmış HTML verilerini belgenin gövdesine ekleyin.
DocumentBuilder builder = new DocumentBuilder(args.Document);
builder.MoveToMergeField(args.DocumentFieldName);
builder.InsertHtml((string)args.FieldValue);
// Birleştirilmiş içeriği zaten manuel olarak eklediğimiz için,
// bu etkinliğe "Text" özelliği aracılığıyla içerik döndürerek yanıt vermemize gerek kalmayacak.
args.Text = string.Empty;
}
}
void IFieldMergingCallback.ImageFieldMerging(ImageFieldMergingArgs args)
{
// Hiçbir şey yapma.
}
}
Ayrıca bakınız
- class FieldMergingArgs
- ad alanı Aspose.Words.MailMerging
- toplantı Aspose.Words