FieldIf

FieldIf class

EĞER alanını uygular.

public class FieldIf : Field

yapıcılar

İsim Tanım
FieldIf() Default_Constructor

Özellikleri

İsim Tanım
ComparisonOperator { get; set; } Karşılaştırma operatörünü alır veya ayarlar.
DisplayResult { get; } Görüntülenen alan sonucunu temsil eden metni alır.
End { get; } Alan sonunu temsil eden düğümü alır.
FalseText { get; set; } Karşılaştırma ifadesi yanlışsa görüntülenen metni alır veya ayarlar.
Format { get; } FieldFormat alanın biçimlendirmesine yazılı 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).
LeftExpression { get; set; } Karşılaştırma ifadesinin sol kısmını alır veya ayarlar.
LocaleId { get; set; } Alanın LCID’sini alır veya ayarlar.
Result { get; set; } Alan ayırıcı ile alan sonu arasındaki metni alır veya ayarlar.
RightExpression { get; set; } Karşılaştırma ifadesinin doğru kısmını alır veya ayarlar.
Separator { get; } Alan ayırıcıyı temsil eden düğümü alır. null. olabilir
Start { get; } Alanın başlangıcını temsil eden düğümü alır.
TrueText { get; set; } Karşılaştırma ifadesi doğruysa görüntülenen metni alır veya ayarlar.
virtual Type { get; } Microsoft Word alan türünü alır.

yöntemler

İsim Tanım
EvaluateCondition() Durumu değerlendirir.
GetFieldCode() Alan başlangıcı ile alan ayırıcı (veya ayırıcı yoksa alan sonu) arasındaki metni döndürür. Alt alanların hem alan kodu hem de alan sonucu dahil edilir.
GetFieldCode(bool) Alan başlangıcı ile alan ayırıcı (veya ayırıcı yoksa alan sonu) arasındaki metni döndürür.
Remove() Alanı belgeden kaldırır. Alandan hemen sonra bir düğüm döndürür. Alanın sonu, üst düğümünün son çocuğu ise, üst paragrafını döndürür. Alan zaten kaldırılmışsa, döner hükümsüz .
Unlink() Bağlantıyı kaldır alanını gerçekleştirir.
Update() Alan güncellemesini gerçekleştirir. Alan zaten güncelleniyorsa atar.
Update(bool) Bir alan güncellemesi gerçekleştirir. Alan zaten güncelleniyorsa atar.

Notlar

İfadelerin belirlediği değerleri karşılaştırırLeftExpression veRightExpression tarafından belirtilen operatör kullanılarak karşılaştırmalı olarakComparisonOperator.

Adres mektup birleştirme kaynağı olarak aşağıdaki biçimde bir alan kullanılacaktır: { IF 0 = 0 “{PatientsNameFML}” "" * MERGEFORMAT }

Örnekler

EĞER alanının nasıl ekleneceğini gösterir.

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

builder.Write("Statement 1: ");
FieldIf field = (FieldIf)builder.InsertField(FieldType.FieldIf, true);
field.LeftExpression = "0";
field.ComparisonOperator = "=";
field.RightExpression = "1";

// EĞER alanı, "TrueText" özelliğinden bir dize görüntüler,
// veya oluşturduğumuz ifadenin doğruluğuna bağlı olarak "FalseText" özelliği.
field.TrueText = "True";
field.FalseText = "False";
field.Update();

// Bu durumda "0 = 1" yanlıştır, bu nedenle görüntülenen sonuç "Yanlış" olacaktır.
Assert.AreEqual(" IF  0 = 1 True False", field.GetFieldCode());
Assert.AreEqual(FieldIfComparisonResult.False, field.EvaluateCondition());
Assert.AreEqual("False", field.Result);

builder.Write("\nStatement 2: ");
field = (FieldIf)builder.InsertField(FieldType.FieldIf, true);
field.LeftExpression = "5";
field.ComparisonOperator = "=";
field.RightExpression = "2 + 3";
field.TrueText = "True";
field.FalseText = "False";
field.Update();

// Bu sefer ifade doğrudur, bu nedenle görüntülenen sonuç "True" olacaktır.
Assert.AreEqual(" IF  5 = \"2 + 3\" True False", field.GetFieldCode());
Assert.AreEqual(FieldIfComparisonResult.True, field.EvaluateCondition());
Assert.AreEqual("True", field.Result);

doc.UpdateFields();
doc.Save(ArtifactsDir + "Field.IF.docx");

Ayrıca bakınız