FieldRef
Contenuti
[
Nascondere
]FieldRef class
Implementa il campo RIF.
Per saperne di più, visita ilLavorare con i campi articolo di documentazione.
public class FieldRef : Field
Costruttori
Nome | Descrizione |
---|---|
FieldRef() | Default_Costruttore |
Proprietà
Nome | Descrizione |
---|---|
BookmarkName { get; set; } | Ottiene o imposta il nome del segnalibro di riferimento. |
DisplayResult { get; } | Ottiene il testo che rappresenta il risultato del campo visualizzato. |
End { get; } | Ottiene il nodo che rappresenta la fine del campo. |
Format { get; } | Ottiene aFieldFormat oggetto che fornisce accesso digitato alla formattazione del campo. |
IncludeNoteOrComment { get; set; } | Ottiene o imposta se incrementare i numeri delle note a piè di pagina, delle note di chiusura e delle annotazioni che sono contrassegnati dal segnalibro e inserire la nota a piè di pagina, la nota di chiusura e il testo del commento corrispondenti. |
InsertHyperlink { get; set; } | Ottiene o imposta se creare un collegamento ipertestuale al paragrafo con segnalibro. |
InsertParagraphNumber { get; set; } | Ottiene o imposta se inserire il numero del paragrafo di riferimento esattamente come appare nel documento. |
InsertParagraphNumberInFullContext { get; set; } | Ottiene o imposta se inserire il numero del paragrafo di riferimento nel contesto completo. |
InsertParagraphNumberInRelativeContext { get; set; } | Ottiene o imposta se inserire il numero del paragrafo di riferimento nel contesto relativo. |
InsertRelativePosition { get; set; } | Ottiene o imposta se inserire la posizione relativa del paragrafo di riferimento. |
IsDirty { get; set; } | Ottiene o imposta se il risultato corrente del campo non è più corretto (obsoleto) a causa di altre modifiche apportate al documento. |
IsLocked { get; set; } | Ottiene o imposta se il campo è bloccato (non deve ricalcolare il risultato). |
LocaleId { get; set; } | Ottiene o imposta l’LCID del campo. |
NumberSeparator { get; set; } | Ottiene o imposta la sequenza di caratteri utilizzata per separare i numeri di sequenza e i numeri di pagina. |
Result { get; set; } | Ottiene o imposta il testo compreso tra il separatore di campo e la fine del campo. |
Separator { get; } | Ottiene il nodo che rappresenta il separatore di campo. Può esserenullo . |
Start { get; } | Ottiene il nodo che rappresenta l’inizio del campo. |
SuppressNonDelimiters { get; set; } | Ottiene o imposta se eliminare i caratteri non delimitatori. |
virtual Type { get; } | Ottiene il tipo di campo Microsoft Word. |
Metodi
Nome | Descrizione |
---|---|
GetFieldCode() | Restituisce il testo compreso tra l’inizio del campo e il separatore di campo (o la fine del campo se non è presente alcun separatore). Sono inclusi sia il codice di campo che il risultato del campo dei campi secondari. |
GetFieldCode(bool) | Restituisce il testo tra l’inizio del campo e il separatore di campo (o la fine del campo se non è presente alcun separatore). |
Remove() | Rimuove il campo dal documento. Restituisce un nodo subito dopo il campo. Se la fine del campo è l’ultimo figlio del suo nodo genitore, restituisce il paragrafo genitore. Se il campo è già stato rimosso, restituiscenullo . |
Unlink() | Esegue lo scollegamento del campo. |
Update() | Esegue l’aggiornamento del campo. Genera un risultato se il campo è già in fase di aggiornamento. |
Update(bool) | Esegue un aggiornamento del campo. Genera un risultato se il campo è già in fase di aggiornamento. |
Osservazioni
Inserisce il testo o la grafica rappresentata dal segnalibro specificato.
Esempi
Mostra come creare testo con segnalibro con un campo SET e quindi visualizzarlo nel documento utilizzando un campo REF.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Assegna un nome al testo con segnalibro con un campo SET.
// Questo campo si riferisce al "segnalibro", non a una struttura di segnalibri che appare nel testo, ma a una variabile denominata.
FieldSet fieldSet = (FieldSet)builder.InsertField(FieldType.FieldSet, false);
fieldSet.BookmarkName = "MyBookmark";
fieldSet.BookmarkText = "Hello world!";
fieldSet.Update();
Assert.AreEqual(" SET MyBookmark \"Hello world!\"", fieldSet.GetFieldCode());
// Fare riferimento al segnalibro per nome in un campo REF e visualizzarne il contenuto.
FieldRef fieldRef = (FieldRef)builder.InsertField(FieldType.FieldRef, true);
fieldRef.BookmarkName = "MyBookmark";
fieldRef.Update();
Assert.AreEqual(" REF MyBookmark", fieldRef.GetFieldCode());
Assert.AreEqual("Hello world!", fieldRef.Result);
doc.Save(ArtifactsDir + "Field.SET.REF.docx");
Mostra come inserire campi REF per fare riferimento ai segnalibri.
public void FieldRef()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.StartBookmark("MyBookmark");
builder.InsertFootnote(FootnoteType.Footnote, "MyBookmark footnote #1");
builder.Write("Text that will appear in REF field");
builder.InsertFootnote(FootnoteType.Footnote, "MyBookmark footnote #2");
builder.EndBookmark("MyBookmark");
builder.MoveToDocumentStart();
// Applicheremo un formato di elenco personalizzato, in cui il numero di parentesi angolari indica il livello di elenco a cui ci troviamo attualmente.
builder.ListFormat.ApplyNumberDefault();
builder.ListFormat.ListLevel.NumberFormat = "> \x0000";
// Inserisci un campo REF che conterrà il testo all'interno del nostro segnalibro, fungerà da collegamento ipertestuale e clonerà le note a piè di pagina del segnalibro.
FieldRef field = InsertFieldRef(builder, "MyBookmark", "", "\n");
field.IncludeNoteOrComment = true;
field.InsertHyperlink = true;
Assert.AreEqual(" REF MyBookmark \\f \\h", field.GetFieldCode());
// Inserisci un campo REF e visualizza se il segnalibro di riferimento è sopra o sotto di esso.
field = InsertFieldRef(builder, "MyBookmark", "The referenced paragraph is ", " this field.\n");
field.InsertRelativePosition = true;
Assert.AreEqual(" REF MyBookmark \\p", field.GetFieldCode());
// Visualizza il numero dell'elenco del segnalibro così come appare nel documento.
field = InsertFieldRef(builder, "MyBookmark", "The bookmark's paragraph number is ", "\n");
field.InsertParagraphNumber = true;
Assert.AreEqual(" REF MyBookmark \\n", field.GetFieldCode());
// Visualizza il numero dell'elenco dei segnalibri, ma omettendo i caratteri non delimitatori, come le parentesi angolari.
field = InsertFieldRef(builder, "MyBookmark", "The bookmark's paragraph number, non-delimiters suppressed, is ", "\n");
field.InsertParagraphNumber = true;
field.SuppressNonDelimiters = true;
Assert.AreEqual(" REF MyBookmark \\n \\t", field.GetFieldCode());
// Scende di un livello nell'elenco.
builder.ListFormat.ListLevelNumber++;
builder.ListFormat.ListLevel.NumberFormat = ">> \x0001";
// Visualizza il numero dell'elenco del segnalibro e i numeri di tutti i livelli dell'elenco sopra di esso.
field = InsertFieldRef(builder, "MyBookmark", "The bookmark's full context paragraph number is ", "\n");
field.InsertParagraphNumberInFullContext = true;
Assert.AreEqual(" REF MyBookmark \\w", field.GetFieldCode());
builder.InsertBreak(BreakType.PageBreak);
// Visualizza i numeri del livello di elenco tra questo campo REF e il segnalibro a cui fa riferimento.
field = InsertFieldRef(builder, "MyBookmark", "The bookmark's relative paragraph number is ", "\n");
field.InsertParagraphNumberInRelativeContext = true;
Assert.AreEqual(" REF MyBookmark \\r", field.GetFieldCode());
// Alla fine del documento, il segnalibro verrà visualizzato qui come elemento dell'elenco.
builder.Writeln("List level above bookmark");
builder.ListFormat.ListLevelNumber++;
builder.ListFormat.ListLevel.NumberFormat = ">>> \x0002";
doc.UpdateFields();
doc.Save(ArtifactsDir + "Field.REF.docx");
}
/// <summary>
/// Chiedi al generatore di documenti di inserire un campo REF, fare riferimento a un segnalibro con esso e aggiungere testo prima e dopo di esso.
/// </summary>
private static FieldRef InsertFieldRef(DocumentBuilder builder, string bookmarkName, string textBefore, string textAfter)
{
builder.Write(textBefore);
FieldRef field = (FieldRef)builder.InsertField(FieldType.FieldRef, true);
field.BookmarkName = bookmarkName;
builder.Write(textAfter);
return field;
}
Guarda anche
- class Field
- spazio dei nomi Aspose.Words.Fields
- assemblea Aspose.Words