ExpansionProvider.GetExpansionFunction 方法 (IXMLDOMNode, String, IVsExpansionFunction%)

返回表示外接功能的 IVsExpansionFunction 对象描述在特定 XML 模板节点 (COM 实现)。

命名空间:  Microsoft.VisualStudio.Package
程序集:   Microsoft.VisualStudio.Package.LanguageService.10.0(在 Microsoft.VisualStudio.Package.LanguageService.10.0.dll 中)
  Microsoft.VisualStudio.Package.LanguageService(在 Microsoft.VisualStudio.Package.LanguageService.dll 中)
  Microsoft.VisualStudio.Package.LanguageService.9.0(在 Microsoft.VisualStudio.Package.LanguageService.9.0.dll 中)
  Microsoft.VisualStudio.Package.LanguageService.11.0(在 Microsoft.VisualStudio.Package.LanguageService.11.0.dll 中)

语法

声明
Public Overridable Function GetExpansionFunction ( _
    xmlFunctionNode As IXMLDOMNode, _
    fieldName As String, _
    <OutAttribute> ByRef func As IVsExpansionFunction _
) As Integer
public virtual int GetExpansionFunction(
    IXMLDOMNode xmlFunctionNode,
    string fieldName,
    out IVsExpansionFunction func
)

参数

  • xmlFunctionNode
    类型:IXMLDOMNode
    [in] 表示外接函数声明中的 IXMLDOMNode 对象。
  • fieldName
    类型:System.String
    [in] 变量的名称或字段此扩展功能表示。

返回值

类型:System.Int32
如果成功,则返回; S_OK否则,返回错误代码。

实现

IVsExpansionClient.GetExpansionFunction(IXMLDOMNode, String, IVsExpansionFunction%)

备注

此方法是 GetExpansionFunction 方法的实现。 IVsExpansionClient 接口的。

该基方法转换 IXMLDOMNode 对象转换为 XmlElement 对象并调用另一个 GetExpansionFunction 方法。

示例

这是托管包框架如何执行此 GetExpansionFunction 方法。此示例演示如何将 IXMLDOMNode 对象转换为 c# 中 XmlElement 对象。

using Microsoft.VisualStudio.TextManager.Interop;
using Microsoft.VisualStudio.OLE.Interop;
using System.Xml;
using System;

namespace Microsoft.VisualStudio.Package
{
    [CLSCompliant(false)]
    [System.Runtime.InteropServices.ComVisible(true)]
    public class ExpansionProvider : IDisposable, IVsExpansionClient
    {
        public virtual int GetExpansionFunction(
                    MSXML.IXMLDOMNode xmlFunctionNode,
                    string fieldName,
                out IVsExpansionFunction func)
        {
            XmlDocument doc = new XmlDocument();
            doc.LoadXml(xmlFunctionNode.xml);
            func = GetExpansionFunction(doc.DocumentElement, fieldName);
            return VsConstants.S_OK;
        }
    }
}

.NET Framework 安全性

请参见

参考

ExpansionProvider 类

GetExpansionFunction 重载

Microsoft.VisualStudio.Package 命名空间