FieldIf
Содержание
[
Скрывать
]FieldIf class
Реализует поле IF.
Чтобы узнать больше, посетитеРабота с полями документальная статья.
public class FieldIf : Field
Конструкторы
Имя | Описание |
---|---|
FieldIf() | Конструктор по умолчанию. |
Характеристики
Имя | Описание |
---|---|
ComparisonOperator { get; set; } | Получает или задает оператор сравнения. |
DisplayResult { get; } | Получает текст, представляющий отображаемый результат поля. |
End { get; } | Получает узел, представляющий конец поля. |
FalseText { get; set; } | Возвращает или задает текст, отображаемый, если выражение сравнения равноЛОЖЬ . |
Format { get; } | ПолучаетFieldFormat объект, который обеспечивает типизированный доступ к форматированию поля. |
IsDirty { get; set; } | Возвращает или задает, является ли текущий результат поля более неверным (устаревшим) из-за других изменений, внесенных в документ. |
IsLocked { get; set; } | Возвращает или задает, заблокировано ли поле (не следует пересчитывать его результат). |
LeftExpression { get; set; } | Возвращает или задает левую часть выражения сравнения. |
LocaleId { get; set; } | Получает или задает LCID поля. |
Result { get; set; } | Возвращает или задает текст, который находится между разделителем полей и концом поля. |
RightExpression { get; set; } | Возвращает или задает правую часть выражения сравнения. |
Separator { get; } | Получает узел, представляющий разделитель полей. Может бытьнулевой . |
Start { get; } | Получает узел, представляющий начало поля. |
TrueText { get; set; } | Возвращает или задает текст, отображаемый, если выражение сравнения истинно. |
virtual Type { get; } | Получает тип поля Microsoft Word. |
Методы
Имя | Описание |
---|---|
EvaluateCondition() | Оценивает условие. |
GetFieldCode() | Возвращает текст между началом поля и разделителем полей (или концом поля, если разделитель отсутствует). Включаются как код поля, так и результат поля дочерних полей. |
GetFieldCode(bool) | Возвращает текст между началом поля и разделителем полей (или концом поля, если разделитель отсутствует). |
Remove() | Удаляет поле из документа. Возвращает узел сразу после поля. Если конец поля — последний child его родительского узла, возвращает его родительский абзац. Если поле уже удалено, возвращаетнулевой . |
Unlink() | Выполняет отмену связи поля. |
Update() | Выполняет обновление поля. Выдает исключение, если поле уже обновляется. |
Update(bool) | Выполняет обновление поля. Выдает исключение, если поле уже обновляется. |
Примечания
Сравнивает значения, обозначенные выражениямиLeftExpression
иRightExpression
в сравнении с использованием оператора, обозначенногоComparisonOperator
.
В качестве источника слияния почты будет использоваться поле в следующем формате: { IF 0 = 0 “{PatientsNameFML}” "" * MERGEFORMAT }
Примеры
Показывает, как вставить поле IF.
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";
// Поле IF отобразит строку либо из своего свойства "TrueText",
// или его свойство "FalseText", в зависимости от истинности построенного нами утверждения.
field.TrueText = "True";
field.FalseText = "False";
field.Update();
// В этом случае «0 = 1» неверно, поэтому отображаемый результат будет «Ложь».
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();
// На этот раз утверждение верно, поэтому отображаемый результат будет «True».
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");
Смотрите также
- class Field
- пространство имен Aspose.Words.Fields
- сборка Aspose.Words