Field
Field class
Representa un campo de documento de Microsoft Word.
Para obtener más información, visite elTrabajar con campos artículo de documentación.
public class Field
Propiedades
Nombre | Descripción |
---|---|
DisplayResult { get; } | Obtiene el texto que representa el resultado del campo mostrado. |
End { get; } | Obtiene el nodo que representa el final del campo. |
Format { get; } | Obtiene unFieldFormat objeto que proporciona acceso escrito al formato del campo. |
IsDirty { get; set; } | Obtiene o establece si el resultado actual del campo ya no es correcto (obsoleto) debido a otras modificaciones realizadas en el documento. |
IsLocked { get; set; } | Obtiene o establece si el campo está bloqueado (no debe volver a calcular su resultado). |
LocaleId { get; set; } | Obtiene o establece el LCID del campo. |
Result { get; set; } | Obtiene o establece el texto que se encuentra entre el separador de campo y el final del campo. |
Separator { get; } | Obtiene el nodo que representa el separador de campos. Puede sernulo . |
Start { get; } | Obtiene el nodo que representa el inicio del campo. |
virtual Type { get; } | Obtiene el tipo de campo de Microsoft Word. |
Métodos
Nombre | Descripción |
---|---|
GetFieldCode() | Devuelve texto entre el inicio del campo y el separador de campo (o el final del campo si no hay separador). Se incluyen tanto el código de campo como el resultado del campo de los campos secundarios. |
GetFieldCode(bool) | Devuelve texto entre el inicio del campo y el separador de campo (o el final del campo si no hay separador). |
Remove() | Elimina el campo del documento. Devuelve un nodo justo después del campo. Si el final del campo es el último hijo de su nodo principal, devuelve su párrafo principal. Si el campo ya está eliminado, devuelvenulo . |
Unlink() | Realiza la desvinculación del campo. |
Update() | Realiza la actualización del campo. Se produce si el campo ya se está actualizando. |
Update(bool) | Realiza una actualización de campo. Se produce si el campo ya se está actualizando. |
Observaciones
Un campo en un documento de Word es una estructura compleja que consta de múltiples nodos que incluyen el inicio del campo, el código de campo , el separador de campo, el resultado del campo y el final del campo. Los campos pueden estar anidados, contener contenido enriquecido y abarcar varios párrafos o secciones en un documento. ElField
La clase es un objeto “fachada” que proporciona propiedades y métodos que permiten trabajar con un campo como un solo objeto.
ElStart
,Separator
yEnd
Las propiedades apuntan a los nodos de inicio, separador y final del campo respectivamente.
El contenido entre el inicio del campo y el separador es el código de campo. El contenido entre el separador de campo y el final del campo es el resultado del campo. El código de campo normalmente consta de uno o más Run
Objetos que especifican instrucciones. Se espera que la aplicación de procesamiento ejecute el código de campo para calcular el resultado del campo.
El proceso de calcular los resultados del campo se llama actualización del campo. Aspose.Words puede actualizar los resultados field de la mayoría de los tipos de campos exactamente de la misma manera que lo hace Microsoft Word. En particular, Aspose.Words puede calcular resultados incluso de los campos de fórmula más complejos. Para calcular el resultado field de un solo campo, utilice elUpdate
método. Para actualizar campos en todo el documento useUpdateFields
.
Puede obtener la versión en texto plano del código de campo utilizando elGetFieldCode
método. Puede obtener y configurar la versión de texto sin formato del resultado del campo utilizando elResult
property. Tanto el código de campo como el resultado del campo pueden contener contenido complejo, como campos anidados, párrafos, formas, tablas y en este caso es posible que desee trabajar con los nodos de campo directamente si necesita más control.
No creas instancias de laField
clase directamente. Para crear un nuevo campo utilice elInsertField
método.
Ejemplos
Muestra cómo insertar un campo en un documento usando un código de campo.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Field field = builder.InsertField("DATE \\@ \"dddd, MMMM dd, yyyy\"");
Assert.AreEqual(FieldType.FieldDate, field.Type);
Assert.AreEqual("DATE \\@ \"dddd, MMMM dd, yyyy\"", field.GetFieldCode());
// Esta sobrecarga del método InsertField actualiza automáticamente los campos insertados.
Assert.That(DateTime.Parse(field.Result), Is.EqualTo(DateTime.Today).Within(1).Days);
Ver también
- espacio de nombres Aspose.Words.Fields
- asamblea Aspose.Words