Bookmark.InsertCrossReference 方法

将对标题、书签、脚注或尾注、或对定义有标题标签的项(例如,公式、图形或表)的交叉引用插入 Bookmark 控件。

命名空间:  Microsoft.Office.Tools.Word
程序集:  Microsoft.Office.Tools.Word(在 Microsoft.Office.Tools.Word.dll 中)

语法

声明
Sub InsertCrossReference ( _
    ByRef ReferenceType As Object, _
    ReferenceKind As WdReferenceKind, _
    ByRef ReferenceItem As Object, _
    ByRef InsertAsHyperlink As Object, _
    ByRef IncludePosition As Object, _
    ByRef SeparateNumbers As Object, _
    ByRef SeparatorString As Object _
)
void InsertCrossReference(
    ref Object ReferenceType,
    WdReferenceKind ReferenceKind,
    ref Object ReferenceItem,
    ref Object InsertAsHyperlink,
    ref Object IncludePosition,
    ref Object SeparateNumbers,
    ref Object SeparatorString
)

参数

  • ReferenceItem
    类型:System.Object%
    如果 ReferenceType 为 wdRefTypeBookmark,则此参数指定一个书签名。对于所有其他 ReferenceType 值,此参数指定位于**“交叉引用”对话框的“引用类型”**框中的项数或名称。使用 GetCrossReferenceItems 方法可返回可与此参数一起使用的项名称列表。
  • InsertAsHyperlink
    类型:System.Object%
    为 true,则将交叉引用作为超链接插入被引用项中;否则为 false。
  • IncludePosition
    类型:System.Object%
    为 true,则根据引用项相对于交叉引用的位置,在之上或之下插入。
  • SeparatorString
    类型:System.Object%
    如果 SeparateNumbers 参数设置为 true,则指定一个字符串来用作分隔符。

备注

如果为 ReferenceKind 值指定 wdPageNumber,则可能需要重标文档的页码,以便查看正确的交叉引用信息。

可选参数

有关可选参数的信息,请参见Office 解决方案中的可选参数

示例

下面的代码示例使用 Bookmark 控件向文档中添加标题和文本,然后插入对该标题文本的交叉引用。

此示例针对的是文档级自定义项。

Private Sub BookmarkInsertCrossReference()
    Me.Paragraphs(1).Range.InsertParagraphBefore()
    Me.Paragraphs(1).Range.InsertParagraphBefore()

    Dim Bookmark1 As Microsoft.Office.Tools.Word.Bookmark = _
        Me.Controls.AddBookmark(Me.Paragraphs(1).Range, "Bookmark1")
    Bookmark1.Text = "Heading of Document"
    Bookmark1.Style = "Heading 1"
    Bookmark1.Delete()

    Dim Bookmark2 As Microsoft.Office.Tools.Word.Bookmark = _
        Me.Controls.AddBookmark(Me.Paragraphs(2).Range, "Bookmark2")
    Bookmark2.Text = "This is sample bookmark text: "

    Bookmark2.Words.Last.InsertCrossReference("Heading", _
        Word.WdReferenceKind.wdContentText, "1", True, _
        False, False, " ")

End Sub
private void BookmarkInsertCrossReference()
{
    this.Paragraphs[1].Range.InsertParagraphBefore();
    this.Paragraphs[1].Range.InsertParagraphBefore();

    Microsoft.Office.Tools.Word.Bookmark bookmark1 =
        this.Controls.AddBookmark(this.Paragraphs[1].Range,
        "bookmark1");
    bookmark1.Text = "Heading of Document";
    bookmark1.Style = "Heading 1";
    bookmark1.Delete();

    Microsoft.Office.Tools.Word.Bookmark bookmark2 =
        this.Controls.AddBookmark(this.Paragraphs[2].Range,
        "bookmark2");
    bookmark2.Text = "This is sample bookmark text: ";

    object ReferenceType = "Heading";
    object ReferenceItem = "1";
    object InsertAsHyperlink = true;
    object IncludePosition = false;
    object SeparateNumbers = false;
    object SeparatorString = " ";

    bookmark2.Words.Last.InsertCrossReference(ref ReferenceType,
        Word.WdReferenceKind.wdContentText, ref ReferenceItem, 
        ref InsertAsHyperlink, ref IncludePosition,
        ref SeparateNumbers, ref SeparatorString);
}

.NET Framework 安全性

请参见

参考

Bookmark 接口

Microsoft.Office.Tools.Word 命名空间