FieldTC

FieldTC class

Implementa el campo TC.

Para obtener más información, visite elTrabajar con campos Artículo de documentación.

public sealed class FieldTC : Field

Constructores

NombreDescripción
FieldTC()Constructor predeterminado

Propiedades

NombreDescripción
DisplayResult { get; }Obtiene el texto que representa el resultado del campo mostrado.
End { get; }Obtiene el nodo que representa el final del campo.
EntryLevel { get; set; }Obtiene o establece el nivel de la entrada.
Format { get; }Obtiene unFieldFormatobjeto que proporciona acceso tipificado 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 al documento.
IsLocked { get; set; }Obtiene o establece si el campo está bloqueado (no debe recalcular su resultado).
LocaleId { get; set; }Obtiene o establece el LCID del campo.
OmitPageNumber { get; set; }Obtiene o establece si el número de página en la tabla de contenidos debe omitirse para este campo.
Result { get; set; }Obtiene o establece el texto que está entre el separador de campo y el final del campo.
Separator { get; }Obtiene el nodo que representa el separador de campo. Puede sernulo .
Start { get; }Obtiene el nodo que representa el inicio del campo.
Text { get; set; }Obtiene o establece el texto de la entrada.
virtual Type { get; }Obtiene el tipo de campo de Microsoft Word.
TypeIdentifier { get; set; }Obtiene o establece un identificador de tipo para este campo (que normalmente es una letra).

Métodos

NombreDescripción
GetFieldCode()Devuelve el 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 de campo de los campos secundarios.
GetFieldCode(bool)Devuelve el 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 padre, devuelve su párrafo padre. Si el campo ya se ha eliminado, devuelvenulo .
Unlink()Realiza la desvinculación del campo.
Update()Realiza la actualización del campo. Se lanza una excepción si el campo ya se está actualizando.
Update(bool)Realiza una actualización de campo. Se lanza una excepción si el campo ya se está actualizando.

Observaciones

Define el texto y el número de página para una entrada de tabla de contenido (incluida una tabla de figuras), que utiliza un campo TOC.

Ejemplos

Muestra cómo insertar un campo TOC y filtrar qué campos TC terminan como entradas.

public void FieldTocEntryIdentifier()
{
    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);

    // Inserte un campo TOC, que compilará todos los campos TC en una tabla de contenidos.
    FieldToc fieldToc = (FieldToc)builder.InsertField(FieldType.FieldTOC, true);

    // Configure el campo solo para recoger entradas TC del tipo "A" y un nivel de entrada entre 1 y 3.
    fieldToc.EntryIdentifier = "A";
    fieldToc.EntryLevelRange = "1-3";

    Assert.AreEqual(" TOC  \\f A \\l 1-3", fieldToc.GetFieldCode());

    //Estas dos entradas aparecerán en la tabla.
    builder.InsertBreak(BreakType.PageBreak);
    InsertTocEntry(builder, "TC field 1", "A", "1");
    InsertTocEntry(builder, "TC field 2", "A", "2");

    Assert.AreEqual(" TC  \"TC field 1\" \\n \\f A \\l 1", doc.Range.Fields[1].GetFieldCode());

    //Esta entrada se omitirá de la tabla porque tiene un tipo diferente de "A".
    InsertTocEntry(builder, "TC field 3", "B", "1");

    // Esta entrada se omitirá de la tabla porque tiene un nivel de entrada fuera del rango 1-3.
    InsertTocEntry(builder, "TC field 4", "A", "5");

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

/// <summary>
/// Utilice un generador de documentos para insertar un campo TC.
/// </summary>
public void InsertTocEntry(DocumentBuilder builder, string text, string typeIdentifier, string entryLevel)
{
    FieldTC fieldTc = (FieldTC)builder.InsertField(FieldType.FieldTOCEntry, true);
    fieldTc.OmitPageNumber = true;
    fieldTc.Text = text;
    fieldTc.TypeIdentifier = typeIdentifier;
    fieldTc.EntryLevel = entryLevel;
}

Ver también