17

在 Visual Studio 2002 和 2003 版中,“转到定义”将在对象浏览器中找到选定的类型或成员。从 2005 年开始,它改为打开“从元数据生成”的源窗口。如何配置这些较新版本以转到对象浏览器?(换句话说,我有与这个相反的问题

安装 ReSharper 会产生这种变化,所以我知道这一定是可能的,但是如果没有ReSharper ,我该怎么做呢?

4

4 回答 4

11

作为解决方法,您可以创建以下宏:

Sub GoToDefinitionUsingObjectBrowser()
    DTE.ExecuteCommand("Edit.SelectCurrentWord")
    DTE.ExecuteCommand("View.ObjectBrowser")
    DTE.ExecuteCommand("View.ObjectBrowserSearch", DTE.ActiveDocument.Selection.Text)
End Sub

然后转到工具/选项/键盘并为此宏分配热键。

在 Visual Studio 2010 中测试。

于 2010-07-26T21:19:53.380 回答
3

我相信 re-sharper 正在做的是使用Visual Studio SDK对该单击事件进行一些挂钩,我认为没有任何简单的菜单或位置可以更改该设置。


说明(来自CODE Magazine)对与制作右键菜单相关的部分进行了一些编辑。

创建 VSPackage

...VS SDK 在 Visual Studio 中安装了更多项目模板,其中之一是 Visual Studio 集成包(图 1),位于“新项目”对话框的“其他项目类型”>“可扩展性”下。

在此标准对话框之后,Visual Studio 集成包向导将指导您创建新的包项目:

  1. 选择一种编程语言。该向导当前支持 Visual C++ 和 Visual C#。您可以创建或选择一个密钥文件来签署新包。
  2. 提供基本的 VSPackage 信息。向导会提示您提供详细信息,例如公司名称、VSPackage 名称、版本、图标、详细信息以及此步骤中包设计为的最低 Visual Studio 版本(例如 Professional 或 Enterprise)。此信息进入 Visual Studio 初始屏幕和 About 对话框,也用于请求包的 PLK(稍后介绍)。
  3. 选择 VSPackage 选项。一个包可以添加三种类型的功能:菜单命令、工具窗口和自定义编辑器。

菜单命令是添加到 Visual Studio 顶部菜单或上下文菜单(右键单击)的命令。

当向导完成其工作时,VS SDK 将核心元素添加到解决方案中以支持新包。例如,如果您选择工具窗口作为包功能的一部分,则项目包含一个用户控件,您应该在其中放置窗口的可视控件。该项目还包含 .NET 代码文件以处理您将添加到包中的功能。

CtcComponents 文件夹包含伪 C++ 文件(ctc 文件),您可以在其中定义菜单、组、按钮等内容。幸运的是,微软正在逐步淘汰 CTC 文件,并用更友好的基于 XML 的 VSCT 文件格式(将发布在 Visual Studio 2008 的 SDK 中)。

该向导创建了一些其他文件,其中包含在 Visual Studio 中安装包所需的 .NET 代码。其中一些文件包含将 C++ 常量映射到 .NET 常量的类,而其他文件包含安装包时的配置信息。

于 2010-07-26T21:29:33.973 回答
1

我知道这已经很长时间了,但至少在用于 VB(基本)语言的 Visual Studio 的较新版本中,它似乎是选项中的一个设置。文本编辑器>基本>高级在“转到定义”下。

我不知道为什么他们没有其他语言的...

于 2017-06-20T22:35:41.273 回答
0

将鼠标光标放在对象浏览器上要访问的对象上。然后,使用键盘快捷键ctrl++ ,alt它将j直接带您进入对象浏览器窗口。

于 2018-02-13T11:57:50.170 回答