IVsContainedLanguageHost.GetNearestVisibleToken 方法

返回最近的请求行的标记语言。

命名空间:  Microsoft.VisualStudio.TextManager.Interop
程序集:  Microsoft.VisualStudio.TextManager.Interop.8.0(在 Microsoft.VisualStudio.TextManager.Interop.8.0.dll 中)

语法

声明
Function GetNearestVisibleToken ( _
    tsSecondaryToken As TextSpan, _
    <OutAttribute> ptsPrimaryToken As TextSpan() _
) As Integer
int GetNearestVisibleToken(
    TextSpan tsSecondaryToken,
    TextSpan[] ptsPrimaryToken
)
int GetNearestVisibleToken(
    [InAttribute] TextSpan tsSecondaryToken, 
    [OutAttribute] array<TextSpan>^ ptsPrimaryToken
)
abstract GetNearestVisibleToken : 
        tsSecondaryToken:TextSpan * 
        ptsPrimaryToken:TextSpan[] byref -> int
function GetNearestVisibleToken(
    tsSecondaryToken : TextSpan, 
    ptsPrimaryToken : TextSpan[]
) : int

参数

返回值

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

备注

COM 签名

从 singlefileeditor.idl:

HRESULT GetNearestVisibleToken(
   [in]  TextSpan  tsSecondaryToken,
   [out] TextSpan* ptsPrimaryToken
);

如果一个包含的语言在何处无法确定创建对用户可见的生成错误的标记,这种包含的语言应调用 GetNearestVisibleToken 方法,因此,编辑器可以提供最接近的项目创建标记。

例如:

<script runat="server" language="vb">
        Sub TestSub()
</script>

通常, Visual Basic 在 End Class 语句将会将指示问题的错误的波浪下划线 (曲线) 或任何 Visual Basic 代码可能后面缺少 End Sub。 但是,在从 ASP.NET的上面的示例,任何附加 Visual Basic 代码位于可见代码块外。 这种包含的语言可以通过调用失败的 MapSecondaryToPrimarySpan 方法确定此情况下,如果文本是在可视范围内。 在这种情况下,这种包含的语言可以调用 GetNearestVisibleToken 方法获取最新可见的标记范围中放置曲线。 在上面的示例中,曲线应出现在 </script> 标记,这就是编辑器从 GetNearestVisibleToken 方法返回的范围。

.NET Framework 安全性

请参阅

参考

IVsContainedLanguageHost 接口

Microsoft.VisualStudio.TextManager.Interop 命名空间