如何:搜索对象、定义和引用(符号)
更新:2007 年 11 月
通过在“对象浏览器”工具栏的 <搜索> 列表中选择或输入搜索字符串,可以在“对象浏览器”中筛选在“对象”窗格中显示的当前浏览范围内的符号的名称。单击“搜索”可显示包含搜索字符串的当前浏览范围内的所有符号名称。例如,搜索字符串“MyObject”将返回名称“MyObject”、“MyObjectTest”和“CMyObject”。搜索不区分大小写。
也可以使用“查找和替换”窗口的“查找符号”选项卡或“对象浏览器”快捷菜单上的“查找所有引用”命令搜索符号。这些搜索将在“查找符号结果”窗口中显示其结果。有关这些窗口的参考信息,请参见 “查找和替换”窗口 ->“查找符号” 和 “查找符号结果”窗口 窗口。您还可以通过单击代码编辑器上下文菜单中的“转到定义”命令来搜索定义。
使用搜索字符串搜索符号
“对象浏览器”工具栏上的“搜索”菜单使用在“浏览”菜单中选择的当前浏览范围。有关划分搜索范围的更多信息,请参见 如何:查看和更改浏览范围。
使用搜索字符串搜索当前浏览范围
在“对象浏览器”工具栏上的“搜索字符串”字段中,选择以前的搜索字符串或输入某个符号名称的全部或部分内容。
单击“搜索”。
“对象”窗格仅显示名称包含“搜索字符串”的“浏览”范围中的那些项。每个符号名称中匹配的字符串将突出显示。
清除结果
单击“对象浏览器”工具栏上的“清除搜索”按钮。
“对象”窗格现在显示当前浏览范围内的所有对象。
使用“查找符号”搜索符号
使用“查找和替换”窗口的“查找符号”选项卡或“对象浏览器”快捷菜单上的“查找所有引用”命令,在项目代码中定位定义、引用或使用了符号的行。
“查找符号”用于:
在项目中搜索符号的定义,或发现一个符号的多个定义。
搜索对符号的引用,以及在代码中使用该引用的实例。
浏览引用组件和外部组件中的对象层次结构,由此可以了解其功能。
“查找符号”与查找文本不同,在“查找符号”中:
允许将搜索范围限制为仅包含符号。
在 “查找符号结果”窗口 中指示定义和对符号的引用(可用时)。
可以在没有源代码的外部组件中搜索。
显示“查找符号”选项卡
在“编辑”菜单上展开“查找和替换”。
选择“查找符号”。
- 或 -
如果“查找和替换”窗口已经打开,请在工具栏的左侧下拉列表中单击三角形“查看”按钮,然后选择“查找符号”。
查找与搜索字符串匹配的符号名称
签出要搜索的在源代码的管理下存储的任何文件。
将在“设计”视图编辑器中打开的所有文档切换到“源”视图。
从“编辑”菜单中选择“查找和替换”,然后选择“查找符号”。
“查找和替换”窗口打开,并显示“查找符号”选项。
在“查找范围”下拉列表中选择预定义的搜索范围。
“所有组件”- 针对“查找内容”字符串搜索所有可用组件,包括当前解决方案及其引用的组件、整个 .NET Framework,以及使用“添加其他组件”添加的任何组件。
“.NET Framework”- 搜索整个 .NET Framework 类库。
“我的解决方案”- 在打开的解决方案中搜索已定义或已引用的符号名称。
- 或 -
选择一个“自定义组件集”搜索范围。
“自定义组件集(对象浏览器)”- 搜索当前添加到“对象浏览器”的“自定义组件集”搜索范围中的组件。
“自定义组件集(查找符号)”- 搜索当前添加到“查找符号”的“自定义组件集”搜索范围中的组件。
- 或 -
单击浏览(“...”)按钮显示 “编辑自定义组件集”对话框,并选择自定义搜索文件夹集。有关更多信息,请参见 如何:查看和更改浏览范围。
根据需要设置“查找选项”。可以选择以下匹配方式:
“全字匹配”- 选择此选项后,“查找符号结果”窗口将仅显示与“查找内容”字符串全字匹配的实例。例如,搜索“MyObject”将返回“MyObject”,而不会返回“CMyObject”或“MyObjectC”。
“前缀”- 选择此选项后,“查找符号结果”窗口将显示名称以“查找内容”字符串开头的任何符号。例如,搜索“MyObject”将返回“MyObject”、“MyObjectTest”等,而不会返回“CMyObject”。
“子字符串”- 选择此选项后,“查找符号结果”窗口将显示名称在任何位置包含“查找内容”字符串的所有符号。例如,搜索“MyObject”将返回“MyObject”、“MyObjectTest”和“CMyObject”。
对于任何这些选项,可选择:
- “大小写匹配”- 选择此选项后,“查找符号结果”窗口将仅显示与“查找内容”字符串的内容和大小写都匹配的实例。例如,如果在选择了“大小写匹配”的情况下搜索“MyObject”,则将只返回“MyObject”,而不会返回“myobject”或“MYOBJECT”。
说明: “查找”和“替换”选项是全局选项,所以它们在所有搜索中都有效。有关更多信息,请参见“查找和替换”窗口 ->“查找符号”。
在“查找内容”文本框中输入想要查找的字符串或表达式。注意: 在“查找符号”搜索中不能使用通配符和正则表达式。
选择“全部查找”开始搜索。若要取消正在进行的搜索,请选择“停止”。
找到的匹配项将在 “查找符号结果”窗口 中列出。若要跳转到某个搜索匹配项,请双击它的项。
导航到定义
通过代码编辑器上下文菜单中的“转到定义”命令,可以直接定位到所选代码元素的原始定义。或者可以按 F12 键调用“转到定义”命令。
“转到定义”对成员、类型、变量、局部变量等代码元素起作用。即使代码使用了大量的重载或类型推断,“转到定义”也会使用编译器信息帮助您直接定位到最初定义代码元素的位置。但是,为了使“转到定义”能够正确工作,Visual Studio 必须能够使用定义元素的代码。
导航到定义
在代码编辑器中右击代码元素,然后单击“转到定义”。
如果最初定义代码的模块可用,它会显示在代码编辑器的一个新选项卡中。如果定义不可用,您会收到错误消息“无法导航到定义”。