作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
给定一个表示特定类/字段/属性的字符串(例如 MyNameSpace.MyClass
或 System.String.Length
),我如何以编程方式使 Visual Studio转到那个类/字段/属性(即,让 Visual Studio 执行与我在代码编辑器中键入引用然后按 F12 时会发生的相同的事情)?
最佳答案
您可能需要执行以下操作。
IVsObjectManager2
接口(interface)(由 SVsObjectManager
对象实现)IVsObjectManager2.FindLibrary
获取 C# 库,并将结果转换为 IVsSimpleLibrary2
.调用IVsSimpleLibrary2.GetList2
使用正确的 VSOBSEARCHCRITERIA2
以便在您的解决方案的项目中找到该符号。
如果结果 IVsSimpleObjectList2
有GetItemCount()
==1
,和 CanGoToSource
与 VSOBJGOTOSRCTYPE.GS_DEFINITION
返回 pfOK==true
,使用 GoToSource
跳转到源的方法。
否则,与其跳转到源代码,不如简单地向用户显示可能的选项。您将能够使用 IVsFindSymbol
接口(interface)(由 SVsObjectSearch
对象实现)为此。
关于c# - 如何在 Visual Studio 中以编程方式执行 "Go To Definition"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22344868/
我是一名优秀的程序员,十分优秀!