FieldRef
Innehåll
[
Dölj
]FieldRef class
Implementerar REF-fältet.
För att lära dig mer, besökArbeta med fält dokumentationsartikel.
public class FieldRef : Field
Konstruktörer
namn | Beskrivning |
---|---|
FieldRef() | Default_Constructor |
Egenskaper
namn | Beskrivning |
---|---|
BookmarkName { get; set; } | Hämtar eller anger namnet på det refererade bokmärket. |
DisplayResult { get; } | Hämtar texten som representerar det visade fältresultatet. |
End { get; } | Hämtar noden som representerar fältets slut. |
Format { get; } | Får enFieldFormat objekt som ger typad åtkomst till fältets formatering. |
IncludeNoteOrComment { get; set; } | Hämtar eller anger om fotnots-, slutnots- och anteckningsnummer som är markerade av bokmärket ska ökas, och motsvarande fotnots-, slutnots- och kommentartext ska infogas. |
InsertHyperlink { get; set; } | Hämtar eller anger om en hyperlänk ska skapas till det bokmärkta stycket. |
InsertParagraphNumber { get; set; } | Hämtar eller anger om styckets nummer för det refererade stycket ska infogas exakt som det visas i dokumentet. |
InsertParagraphNumberInFullContext { get; set; } | Hämtar eller anger om styckets nummer för det refererade stycket ska infogas i full kontext. |
InsertParagraphNumberInRelativeContext { get; set; } | Hämtar eller anger om styckenumret för det refererade stycket ska infogas i relativ kontext. |
InsertRelativePosition { get; set; } | Hämtar eller anger om den relativa positionen för det refererade stycket ska infogas. |
IsDirty { get; set; } | Hämtar eller anger om det aktuella resultatet av fältet inte längre är korrekt (inaktuellt) på grund av andra ändringar som gjorts i dokumentet. |
IsLocked { get; set; } | Hämtar eller anger om fältet är låst (resultatet ska inte beräknas om). |
LocaleId { get; set; } | Hämtar eller ställer in fältets LCID. |
NumberSeparator { get; set; } | Hämtar eller anger teckensekvensen som används för att separera sekvensnummer och sidnummer. |
Result { get; set; } | Hämtar eller anger text som är mellan fältavgränsaren och fältslutet. |
Separator { get; } | Hämtar noden som representerar fältseparatorn. Kan varanull . |
Start { get; } | Hämtar noden som representerar början av fältet. |
SuppressNonDelimiters { get; set; } | Hämtar eller anger om icke-avgränsande tecken ska undertryckas. |
virtual Type { get; } | Hämtar fälttypen Microsoft Word. |
Metoder
namn | Beskrivning |
---|---|
GetFieldCode() | Returnerar text mellan fältstart och fältavgränsare (eller fältslut om det inte finns någon avgränsare). Både fältkod och fältresultat för underfält inkluderas. |
GetFieldCode(bool) | Returnerar text mellan fältstart och fältavgränsare (eller fältslut om det inte finns någon avgränsare). |
Remove() | Tar bort fältet från dokumentet. Returnerar en nod direkt efter fältet. Om fältets slut är den sista undernoden till dess överordnade nod, returneras dess överordnade stycke. Om fältet redan är borttaget returnerasnull . |
Unlink() | Utför fältavkopplingen. |
Update() | Utför fältuppdateringen. Körs om fältet redan uppdateras. |
Update(bool) | Utför en fältuppdatering. Körs om fältet redan uppdateras. |
Anmärkningar
Infogar texten eller grafiken som representeras av det angivna bokmärket.
Exempel
Visar hur man skapar bokmärkt text med ett SET-fält och sedan visar den i dokumentet med ett REF-fält.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Namnge bokmärkt text med ett SET-fält.
// Detta fält refererar till "bokmärket", inte en bokmärkesstruktur som visas i texten, utan en namngiven variabel.
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());
// Referera till bokmärket med namn i ett REF-fält och visa dess innehåll.
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");
Visar hur man infogar REF-fält för att referera till bokmärken.
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();
// Vi kommer att använda ett anpassat listformat, där antalet vinkelparenteser anger listnivån vi befinner oss på för närvarande.
builder.ListFormat.ApplyNumberDefault();
builder.ListFormat.ListLevel.NumberFormat = "> \x0000";
// Infoga ett REF-fält som ska innehålla texten i vårt bokmärke, fungera som en hyperlänk och klona bokmärkets fotnoter.
FieldRef field = InsertFieldRef(builder, "MyBookmark", "", "\n");
field.IncludeNoteOrComment = true;
field.InsertHyperlink = true;
Assert.AreEqual(" REF MyBookmark \\f \\h", field.GetFieldCode());
// Infoga ett REF-fält och visa om det refererade bokmärket är ovanför eller under det.
field = InsertFieldRef(builder, "MyBookmark", "The referenced paragraph is ", " this field.\n");
field.InsertRelativePosition = true;
Assert.AreEqual(" REF MyBookmark \\p", field.GetFieldCode());
// Visa bokmärkets listnummer som det visas i dokumentet.
field = InsertFieldRef(builder, "MyBookmark", "The bookmark's paragraph number is ", "\n");
field.InsertParagraphNumber = true;
Assert.AreEqual(" REF MyBookmark \\n", field.GetFieldCode());
// Visa bokmärkets listnummer, men med icke-avgränsande tecken, såsom vinkelparenteser, utelämnade.
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());
// Flytta ner en listnivå.
builder.ListFormat.ListLevelNumber++;
builder.ListFormat.ListLevel.NumberFormat = ">> \x0001";
// Visar bokmärkets listnummer och numren för alla listnivåer ovanför det.
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);
// Visar listnivånumren mellan detta REF-fält och bokmärket som det refererar till.
field = InsertFieldRef(builder, "MyBookmark", "The bookmark's relative paragraph number is ", "\n");
field.InsertParagraphNumberInRelativeContext = true;
Assert.AreEqual(" REF MyBookmark \\r", field.GetFieldCode());
// I slutet av dokumentet visas bokmärket som ett listobjekt här.
builder.Writeln("List level above bookmark");
builder.ListFormat.ListLevelNumber++;
builder.ListFormat.ListLevel.NumberFormat = ">>> \x0002";
doc.UpdateFields();
doc.Save(ArtifactsDir + "Field.REF.docx");
}
/// <summary>
/// Få dokumentbyggaren att infoga ett REF-fält, referera till ett bokmärke med det och lägga till text före och efter det.
/// </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;
}
Se även
- class Field
- namnutrymme Aspose.Words.Fields
- hopsättning Aspose.Words