Bookmark 控件

更新: 2008 年 7 月

适用于

本主题中的信息仅适用于指定的 Visual Studio Tools for Office 项目和 Microsoft Office 版本。

文档级项目

  • Word 2003

  • Word 2007

应用程序级项目

  • Word 2007

有关更多信息,请参见按应用程序和项目类型提供的功能

Bookmark 控件是一个具有唯一名称且可以公开事件的书签,可以绑定到数据。可以将书签用作占位符以在 Microsoft Office Word 文档中标记项或位置。

Bookmark 控件是 Microsoft.Office.Interop.Word.Bookmark 对象和 Microsoft.Office.Interop.Word.Range 对象的组合。向文档添加书签时,Visual Studio Tools for Office 会创建一个书签对象,可以直接针对该对象编程,而不必遍历 Word 对象模型。

在文档级项目中,您可以在设计时或运行时向文档中添加 Bookmark 控件。从 Visual Studio 2008 Service Pack 1 (SP1) 开始,您还可以使用 Word 2007 的应用程序级外接程序在运行时向任何打开的文档中添加 Bookmark 控件。有关更多信息,请参见如何:向 Word 文档添加书签控件

将数据绑定到控件

Bookmark 控件支持简单数据绑定。应该使用 DataBindings 属性将书签绑定到数据源。书签的默认数据绑定属性是 Text 属性。

如果更新绑定数据集内的数据,则 Bookmark 控件会反映所做的更改。

在文档级项目中,还可以使用“数据源”窗口将数据绑定到书签。有关更多信息,请参见如何:用对象中的数据填充文档

格式设置

可应用于 Microsoft.Office.Interop.Word.Bookmark 的格式设置也可应用于 Bookmark 控件。其中包括字体、缩进、间距、编号和样式。

向书签分配文本

Microsoft.Office.Interop.Word.Bookmark 对象和 Bookmark 控件之间的另一个差异在于将文本分配给书签时其行为方式的不同。如果向零长度 Microsoft.Office.Interop.Word.Bookmark 分配文本,文本将被追加到书签右侧,且书签的长度保持为零。但是,如果向零长度 Bookmark 分配文本,文本将被插入到书签中,且书签的长度将扩展到所插入字符的总数。

此外,Visual Studio Tools for Office 会将 Bookmark.Text 属性添加到 Bookmark 控件。这与书签的 Range 上可用的 Range.Text 属性不同。

Text 属性

说明

Bookmark.Text

使用此属性可以在书签内显示文本,并使书签保留在文档中。向书签分配文本会扩展书签范围,但不会删除书签。

例如,Bookmark1.Text = "Hello world" 将文本插入书签中,且使书签保持原样。

Range.Text

使用此属性可在书签位置处显示文本,并自动删除该书签。例如,Bookmark1.Range.Text = "Hello world" 将文本插入书签中,并删除该书签。

在设计时重命名控件

在文档级项目中,将 Bookmark 控件从“工具箱”拖到文档中时,Visual Studio Tools for Office 会自动为该控件生成一个名称。可以在“属性”窗口中更改控件的名称。

重叠控件

书签控件可以相互重叠;也就是说,多个书签可以共享相同文本。向其中一个重叠书签分配新文本时,该书签将仅包含新文本,并且书签之间将不再重叠。此时,另一个书签将仅包含未在原来的重叠书签之间共享的文本。

下表说明句子“This is sample text.”如何由两个重叠书签共享。

书签

文本

重叠书签

[this is {sample] text.}

Bookmark1

This is sample

Bookmark2

sample text.

如果向 Bookmark1 分配新文本“This is replacement.”,则书签不再重叠并且 Bookmark2 仅保留原来不属于 Bookmark1 的文本。

书签

文本

两个单独的书签

[this is replacement]{ text.}

Bookmark1

This is replacement

Bookmark2

text.

当一个书签完全包含在另一个书签中时,更改外部书签的文本不会删除内部书签。但是,内部书签将变成空书签并移动到外部书签的末尾。下表说明句子“This is sample text.”如何由包含于另一个书签中的书签共享。

书签

文本

重叠书签

[this is {sample} text.]

Bookmark1

This is sample text.

Bookmark2

sample

如果向 Bookmark1 分配新文本“This is replacement.”,则书签不再重叠并且 Bookmark2 变成位于 Bookmark1 末尾的空书签。

书签

文本

两个单独的书签

[this is replacement.]{}

Bookmark1

This is replacement.

Bookmark2

<空>

事件

以下事件可用于 Bookmark 控件:

请参见

任务

如何:向 Word 文档添加书签控件

演练:创建书签的快捷菜单

概念

将数据绑定到控件

宿主项和宿主控件的编程限制

其他资源

Word 宿主控件

Excel 宿主控件

修订记录

日期

修订历史记录

原因

2008 年 7 月

增加了有关在应用程序级项目中使用书签控件的信息。

SP1 功能更改。