DocumentBase.SelectSingleNode 方法

返回一个 Microsoft.Office.Interop.Word.XMLNode 对象,该对象表示文档中与 XPath 参数匹配的第一个节点。

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

语法

声明
Public Function SelectSingleNode ( _
    xPath As String, _
    prefixMapping As String, _
    fastSearchSkippingTextNodes As Boolean _
) As XMLNode
public XMLNode SelectSingleNode(
    string xPath,
    string prefixMapping,
    bool fastSearchSkippingTextNodes
)

参数

  • xPath
    类型:System.String
    有效的 XPath 字符串。关于 XPath 的更多信息,请参见 XPath 参考。
  • prefixMapping
    类型:System.String
    提供架构中用作搜索依据的前缀。如果 XPath 参数使用名称搜索元素,请使用 PrefixMapping 参数。
  • fastSearchSkippingTextNodes
    类型:System.Boolean
    如果为 true,则在搜索指定的节点时忽略所有文本节点。如果为 false,则在搜索中包含文本节点。默认值为 false。

返回值

类型:Microsoft.Office.Interop.Word.XMLNode
一个 Microsoft.Office.Interop.Word.XMLNode 对象,该对象表示文档中与 XPath 参数匹配的第一个节点;如果未找到与 XPath 参数匹配的节点,则为 nullnull 引用(在 Visual Basic 中为 Nothing)。

备注

将 FastSearchSkippingTextNodes 参数设置为 true 会降低性能,这是由于 Microsoft Office Word 会在文档中的所有节点搜索该节点中包含的文本。

可选参数

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

示例

下面的代码示例阐释在调用 SelectSingleNode 方法时如何指定 XPath 和 PrefixMapping 参数。 若要使用此示例,请从文档级项目内的 ThisDocument 类中运行此示例。

Private Sub DocumentSelectSingleNode()
    If Me.XMLSchemaReferences.Count > 0 Then
        Dim XPath As String = "/x:catalog/x:book/x:title"
        Dim PrefixMapping As String = "xmlns:x=""" + _
            Me.XMLSchemaReferences(1).NamespaceURI + """"
        Dim node As Word.XMLNode = Me.SelectSingleNode(XPath, _
            PrefixMapping, True)
    Else
        MessageBox.Show("The document does not contain a " + _
            "schema reference.")
    End If
End Sub
private void DocumentSelectSingleNode()
{
    if (this.XMLSchemaReferences.Count > 0)
    {
        string XPath = "/x:catalog/x:book/x:title";
        object key = 1;

        string PrefixMapping = "xmlns:x=\"" +
            this.XMLSchemaReferences.get_Item(ref key).NamespaceURI +
            "\"";

        Word.XMLNode node = this.SelectSingleNode(XPath, 
            PrefixMapping, true);
    }
    else
    {
        MessageBox.Show("The document does not contain a " +
            "schema reference.");
    }
}

.NET Framework 安全性

请参见

参考

DocumentBase 类

Microsoft.Office.Tools.Word 命名空间