Heading
Contenido
[
Ocultar
]FieldIndex.Heading property
Obtiene o establece un encabezado que aparece al principio de cada conjunto de entradas para cualquier letra determinada.
public string Heading { get; set; }
Ejemplos
Muestra cómo completar un campo ÍNDICE con entradas utilizando campos XE y también modificar su apariencia.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Cree un campo ÍNDICE que mostrará una entrada para cada campo XE que se encuentra en el documento.
// Cada entrada mostrará el valor de la propiedad Texto del campo XE en el lado izquierdo,
// y el número de la página que contiene el campo XE a la derecha.
// Si los campos XE tienen el mismo valor en su propiedad "Texto",
// el campo ÍNDICE los agrupará en una sola entrada.
FieldIndex index = (FieldIndex)builder.InsertField(FieldType.FieldIndex, true);
index.LanguageId = "1033";
// Establecer el valor de esta propiedad en "A" agrupará todas las entradas por su primera letra,
// y coloca esa letra en mayúscula encima de cada grupo.
index.Heading = "A";
// Establece la tabla creada por el campo ÍNDICE para que abarque 2 columnas.
index.NumberOfColumns = "2";
// Establece que se omitirán todas las entradas con letras iniciales fuera del rango de caracteres "ac".
index.LetterRange = "a-c";
Assert.AreEqual(" INDEX \\z 1033 \\h A \\c 2 \\p a-c", index.GetFieldCode());
// Estos dos campos XE siguientes aparecerán bajo el encabezado "A",
// con sus respectivos estilos de texto también aplicados a sus números de página.
builder.InsertBreak(BreakType.PageBreak);
FieldXE indexEntry = (FieldXE)builder.InsertField(FieldType.FieldIndexEntry, true);
indexEntry.Text = "Apple";
indexEntry.IsItalic = true;
Assert.AreEqual(" XE Apple \\i", indexEntry.GetFieldCode());
builder.InsertBreak(BreakType.PageBreak);
indexEntry = (FieldXE)builder.InsertField(FieldType.FieldIndexEntry, true);
indexEntry.Text = "Apricot";
indexEntry.IsBold = true;
Assert.AreEqual(" XE Apricot \\b", indexEntry.GetFieldCode());
// Los dos siguientes campos XE estarán bajo los encabezados "B" y "C" en la tabla de contenido de los campos ÍNDICE.
builder.InsertBreak(BreakType.PageBreak);
indexEntry = (FieldXE)builder.InsertField(FieldType.FieldIndexEntry, true);
indexEntry.Text = "Banana";
builder.InsertBreak(BreakType.PageBreak);
indexEntry = (FieldXE)builder.InsertField(FieldType.FieldIndexEntry, true);
indexEntry.Text = "Cherry";
// Los campos ÍNDICE ordenan todas las entradas alfabéticamente, por lo que esta entrada aparecerá debajo de "A" con las otras dos.
builder.InsertBreak(BreakType.PageBreak);
indexEntry = (FieldXE)builder.InsertField(FieldType.FieldIndexEntry, true);
indexEntry.Text = "Avocado";
// Esta entrada no aparecerá porque comienza con la letra "D",
// que está fuera del rango de caracteres "ac" que define la propiedad LetterRange del campo INDEX.
builder.InsertBreak(BreakType.PageBreak);
indexEntry = (FieldXE)builder.InsertField(FieldType.FieldIndexEntry, true);
indexEntry.Text = "Durian";
doc.UpdatePageLayout();
doc.UpdateFields();
doc.Save(ArtifactsDir + "Field.INDEX.XE.Formatting.docx");
Ver también
- class FieldIndex
- espacio de nombres Aspose.Words.Fields
- asamblea Aspose.Words