FieldNext
İçindekiler
[
Saklamak
]FieldNext class
NEXT alanını uygular.
Daha fazla bilgi edinmek için şu adresi ziyaret edin:Alanlarla Çalışma belgeleme makalesi.
public class FieldNext : Field
yapıcılar
İsim | Tanım |
---|---|
FieldNext() | Default_Constructor |
Özellikleri
İsim | Tanım |
---|---|
DisplayResult { get; } | Görüntülenen alan sonucunu temsil eden metni alır. |
End { get; } | Alan sonunu temsil eden düğümü alır. |
Format { get; } | Bir tane alırFieldFormat alanın biçimlendirmesine yazılmış erişim sağlayan nesne. |
IsDirty { get; set; } | Belgede yapılan diğer değişiklikler nedeniyle alanın geçerli sonucunun artık doğru (eski) olup olmadığını alır veya ayarlar. |
IsLocked { get; set; } | Alanın kilitli olup olmadığını alır veya ayarlar (sonucunu yeniden hesaplamamalıdır). |
LocaleId { get; set; } | Alanın LCID’sini alır veya ayarlar. |
Result { get; set; } | Alan ayırıcısı ile alan sonu arasındaki metni alır veya ayarlar. |
Separator { get; } | Alan ayırıcısını temsil eden düğümü alır.hükümsüz . |
Start { get; } | Alanın başlangıcını temsil eden düğümü alır. |
virtual Type { get; } | Microsoft Word alan türünü alır. |
yöntemler
İsim | Tanım |
---|---|
GetFieldCode() | Alan başlangıcı ile alan ayırıcısı (veya ayırıcı yoksa alan sonu) arasındaki metni döndürür. Hem alan kodu hem de alt alanların alan sonucu dahil edilir. |
GetFieldCode(bool) | Alan başlangıcı ile alan ayırıcısı (veya ayırıcı yoksa alan sonu) arasındaki metni döndürür. |
Remove() | Alanı belgeden kaldırır. Alanın hemen ardından bir düğüm döndürür. Alanın sonu, üst düğümünün son alt ‘siyse, üst paragrafını döndürür. Alan zaten kaldırılmışsa, şunu döndürürhükümsüz . |
Unlink() | Alan bağlantısını kaldırma işlemini gerçekleştirir. |
Update() | Alan güncellemesini gerçekleştirir. Alan zaten güncelleniyorsa fırlatır. |
Update(bool) | Bir alan güncellemesi gerçekleştirir. Alan zaten güncelleniyorsa fırlatır. |
Notlar
Yeni bir birleştirilmiş belge başlatmak yerine, bir sonraki veri kaydını geçerli birleştirilmiş belgeye birleştirir.
Örnekler
Bir posta birleştirme sırasında birden fazla satırı tek bir sayfada birleştirmek için NEXT/NEXTIF alanlarının nasıl kullanılacağını gösterir.
public void FieldNext()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// E-posta birleştirmemiz için 3 satırdan oluşan bir veri kaynağı oluşturalım.
// Bu tabloyu kullanan bir posta birleştirme işlemi normalde 3 sayfalık bir belge oluşturur.
DataTable table = new DataTable("Employees");
table.Columns.Add("Courtesy Title");
table.Columns.Add("First Name");
table.Columns.Add("Last Name");
table.Rows.Add("Mr.", "John", "Doe");
table.Rows.Add("Mrs.", "Jane", "Cardholder");
table.Rows.Add("Mr.", "Joe", "Bloggs");
InsertMergeFields(builder, "First row: ");
// Aynı FieldName'e sahip birden fazla birleştirme alanımız varsa,
// veri kaynağının aynı satırından veri alacaklar ve birleştirmeden sonra aynı değeri görüntüleyecekler.
// SONRAKİ alanı, posta birleştirmeye anında bir satır aşağı hareket etmesini söyler,
// bu, NEXT alanını takip eden tüm MERGEFIELD'ların bir sonraki satırdan veri alacağı anlamına gelir.
// Son satırdayken bir sonraki satıra geçmeye kesinlikle çalışmayın.
FieldNext fieldNext = (FieldNext)builder.InsertField(FieldType.FieldNext, true);
Assert.AreEqual(" NEXT ", fieldNext.GetFieldCode());
// Birleştirmeden sonra, bu MERGEFIELD'lerin kabul ettiği veri kaynağı değerleri
// yukarıdaki MERGEFIELD'larla aynı sayfada sonlanacaktır.
InsertMergeFields(builder, "Second row: ");
// NEXTIF alanı, NEXT alanıyla aynı işleve sahiptir.
// ancak aşağıdaki 3 özellik tarafından oluşturulan bir ifade doğruysa bir sonraki satıra atlar.
FieldNextIf fieldNextIf = (FieldNextIf)builder.InsertField(FieldType.FieldNextIf, true);
fieldNextIf.LeftExpression = "5";
fieldNextIf.RightExpression = "2 + 3";
fieldNextIf.ComparisonOperator = "=";
Assert.AreEqual(" NEXTIF 5 = \"2 + 3\"", fieldNextIf.GetFieldCode());
// Yukarıdaki alan tarafından iddia edilen karşılaştırma doğruysa,
// Aşağıdaki 3 birleştirme alanı üçüncü satırdan veri alacaktır.
// Aksi halde bu alanlar tekrar 2. satırdan veri alacaktır.
InsertMergeFields(builder, "Third row: ");
doc.MailMerge.Execute(table);
// Veri kaynağımızda 3 satır var ve iki kez satır atladık.
// Çıktı belgemiz, 3 satırın tümünden veri içeren 1 sayfadan oluşacaktır.
doc.Save(ArtifactsDir + "Field.NEXT.NEXTIF.docx");
}
/// <summary>
/// "Nezaket Ünvanı", "Adı" ve "Soyadı" adlı sütunları içeren bir veri kaynağı için MERGEFIELD'leri eklemek üzere bir belge oluşturucu kullanır.
/// </summary>
public void InsertMergeFields(DocumentBuilder builder, string firstFieldTextBefore)
{
InsertMergeField(builder, "Courtesy Title", firstFieldTextBefore, " ");
InsertMergeField(builder, "First Name", null, " ");
InsertMergeField(builder, "Last Name", null, null);
builder.InsertParagraph();
}
/// <summary>
/// Belirtilen özelliklere sahip bir MERGFEILD eklemek için bir belge oluşturucu kullanır.
/// </summary>
public void InsertMergeField(DocumentBuilder builder, string fieldName, string textBefore, string textAfter)
{
FieldMergeField field = (FieldMergeField) builder.InsertField(FieldType.FieldMergeField, true);
field.FieldName = fieldName;
field.TextBefore = textBefore;
field.TextAfter = textAfter;
}
Ayrıca bakınız
- class Field
- ad alanı Aspose.Words.Fields
- toplantı Aspose.Words