BookmarkEnd
Innehåll
[
Dölj
]BookmarkEnd class
Representerar slutet på ett bokmärke i ett Word-dokument.
För att lära dig mer, besökArbeta med bokmärken dokumentationsartikel.
public class BookmarkEnd : Node
Konstruktörer
namn | Beskrivning |
---|---|
BookmarkEnd(DocumentBase, string) | Initierar en ny instans avBookmarkEnd klass. |
Egenskaper
namn | Beskrivning |
---|---|
CustomNodeId { get; set; } | Anger anpassad nodidentifierare. |
virtual Document { get; } | Hämtar dokumentet som denna nod tillhör. |
virtual IsComposite { get; } | Returersann om denna nod kan innehålla andra noder. |
Name { get; set; } | Hämtar eller ställer in bokmärkets namn. |
NextSibling { get; } | Hämtar noden som följer direkt efter denna nod. |
override NodeType { get; } | ReturerBookmarkEnd . |
ParentNode { get; } | Hämtar den omedelbara föräldern till denna nod. |
PreviousSibling { get; } | Hämtar noden som omedelbart föregår denna nod. |
Range { get; } | Returnerar enRange objekt som representerar den del av ett dokument som finns i denna nod. |
Metoder
namn | Beskrivning |
---|---|
override Accept(DocumentVisitor) | Tar emot en besökare. |
Clone(bool) | Skapar en duplikat av noden. |
GetAncestor(NodeType) | Hämtar den första förfadern till den angivnaNodeType . |
GetAncestor(Type) | Hämtar den första förfadern till den angivna objekttypen. |
virtual GetText() | Hämtar texten för denna nod och alla dess underordnade noder. |
NextPreOrder(Node) | Hämtar nästa nod enligt algoritmen för förbeställningsträdtraversering. |
PreviousPreOrder(Node) | Hämtar föregående nod enligt algoritmen för trädtraversering i förbeställning. |
Remove() | Tar bort sig själv från föräldern. |
ToString(SaveFormat) | Exporterar nodens innehåll till en sträng i det angivna formatet. |
ToString(SaveOptions) | Exporterar nodens innehåll till en sträng med de angivna sparalternativen. |
Anmärkningar
Ett komplett bokmärke i ett Word-dokument består av enBookmarkStart
och en matchandeBookmarkEnd
med samma bokmärkesnamn.
BookmarkStart
ochBookmarkEnd
är bara markörer inuti ett document som anger var bokmärket börjar och slutar.
AnvändBookmark
klassen som en “fasad” för att fungera med ett bookmark som ett enda objekt.
Exempel
Visar hur man lägger till bokmärken och uppdaterar deras innehåll.
public void CreateUpdateAndPrintBookmarks()
{
// Skapa ett dokument med tre bokmärken och använd sedan en anpassad dokumentbesökarimplementering för att skriva ut innehållet.
Document doc = CreateDocumentWithBookmarks(3);
BookmarkCollection bookmarks = doc.Range.Bookmarks;
PrintAllBookmarkInfo(bookmarks);
// Bokmärken kan nås i bokmärkessamlingen via index eller namn, och deras namn kan uppdateras.
bookmarks[0].Name = $"{bookmarks[0].Name}_NewName";
bookmarks["MyBookmark_2"].Text = $"Updated text contents of {bookmarks[1].Name}";
// Skriv ut alla bokmärken igen för att se uppdaterade värden.
PrintAllBookmarkInfo(bookmarks);
}
/// <summary>
/// Skapa ett dokument med ett givet antal bokmärken.
/// </summary>
private static Document CreateDocumentWithBookmarks(int numberOfBookmarks)
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
for (int i = 1; i <= numberOfBookmarks; i++)
{
string bookmarkName = "MyBookmark_" + i;
builder.Write("Text before bookmark.");
builder.StartBookmark(bookmarkName);
builder.Write($"Text inside {bookmarkName}.");
builder.EndBookmark(bookmarkName);
builder.Writeln("Text after bookmark.");
}
return doc;
}
/// <summary>
/// Använd en iterator och en besökare för att skriva ut information om varje bokmärke i samlingen.
/// </summary>
private static void PrintAllBookmarkInfo(BookmarkCollection bookmarks)
{
BookmarkInfoPrinter bookmarkVisitor = new BookmarkInfoPrinter();
// Få varje bokmärke i samlingen att acceptera en besökare som skriver ut dess innehåll.
using (IEnumerator<Bookmark> enumerator = bookmarks.GetEnumerator())
{
while (enumerator.MoveNext())
{
Bookmark currentBookmark = enumerator.Current;
if (currentBookmark != null)
{
currentBookmark.BookmarkStart.Accept(bookmarkVisitor);
currentBookmark.BookmarkEnd.Accept(bookmarkVisitor);
Console.WriteLine(currentBookmark.BookmarkStart.GetText());
}
}
}
}
/// <summary>
/// Skriver ut innehållet i varje besökt bokmärke till konsolen.
/// </summary>
public class BookmarkInfoPrinter : DocumentVisitor
{
public override VisitorAction VisitBookmarkStart(BookmarkStart bookmarkStart)
{
Console.WriteLine($"BookmarkStart name: \"{bookmarkStart.Name}\", Contents: \"{bookmarkStart.Bookmark.Text}\"");
return VisitorAction.Continue;
}
public override VisitorAction VisitBookmarkEnd(BookmarkEnd bookmarkEnd)
{
Console.WriteLine($"BookmarkEnd name: \"{bookmarkEnd.Name}\"");
return VisitorAction.Continue;
}
}
Se även
- class Node
- namnutrymme Aspose.Words
- hopsättning Aspose.Words