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