RemoveAt
内容
[
隐藏
]BookmarkCollection.RemoveAt method
删除指定索引处的书签。
public void RemoveAt(int index)
范围 | 类型 | 描述 |
---|---|---|
index | Int32 | 要删除的书签的从零开始的索引。 |
例子
演示如何从文档中删除书签。
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// 插入五个书签,其边界内有文本。
for (int i = 1; i <= 5; i++)
{
string bookmarkName = "MyBookmark_" + i;
builder.StartBookmark(bookmarkName);
builder.Write($"Text inside {bookmarkName}.");
builder.EndBookmark(bookmarkName);
builder.InsertBreak(BreakType.ParagraphBreak);
}
// 该集合存储书签。
BookmarkCollection bookmarks = doc.Range.Bookmarks;
Assert.AreEqual(5, bookmarks.Count);
// 删除书签有多种方法。
// 1 - 调用书签的Remove方法:
bookmarks["MyBookmark_1"].Remove();
Assert.False(bookmarks.Any(b => b.Name == "MyBookmark_1"));
// 2 - 将书签传递给集合的 Remove 方法:
Bookmark bookmark = doc.Range.Bookmarks[0];
doc.Range.Bookmarks.Remove(bookmark);
Assert.False(bookmarks.Any(b => b.Name == "MyBookmark_2"));
// 3 - 按名称从集合中删除书签:
doc.Range.Bookmarks.Remove("MyBookmark_3");
Assert.False(bookmarks.Any(b => b.Name == "MyBookmark_3"));
// 4 - 删除书签集合中索引处的书签:
doc.Range.Bookmarks.RemoveAt(0);
Assert.False(bookmarks.Any(b => b.Name == "MyBookmark_4"));
// 我们可以清除整个书签集合。
bookmarks.Clear();
// 书签内的文本仍然存在于文档中。
Assert.That(bookmarks, Is.Empty);
Assert.AreEqual("Text inside MyBookmark_1.\r" +
"Text inside MyBookmark_2.\r" +
"Text inside MyBookmark_3.\r" +
"Text inside MyBookmark_4.\r" +
"Text inside MyBookmark_5.", doc.GetText().Trim());
也可以看看
- class BookmarkCollection
- 命名空间 Aspose.Words
- 部件 Aspose.Words