Visual Studio:如何在IntelliSense中显示重载?


251

编写代码后,我知道的查看方法重载的唯一方法是通过删除括号()并重新打开它们来实际编辑该方法。

是否可以按下快捷键来激活此快捷键,而不必编辑文件?

例如,请参考下面的ShowDialog Overload屏幕截图:

ShowDialog1重载


6
好的旧的向上和向下箭头发生了什么?
Zapnologica

3
@Zapnologica:向上和向下箭头仍然存在,但是必须先激活并打开IntelliSense框,然后才能使用这些箭头滚动过载选项。这个问题是关于如何打开IntelliSense框的。
jp2code

3
默认情况下,如何通过控制空间与控制移位空间将其打开
Zapnologica

6
@Zapnologica:我使用Control + Shift +空格键,就像旧样式的Control + Alt + Delete组合一样。
jp2code

在VS2012中,当我在函数名称后键入打开的括号时,它默认情况下处于打开状态,但是自从我安装了ReSharper之后,它似乎不再这样做。相反,它提供了一个可能的变量/函数的下拉菜单,以填充到第一个arg中。很烦人。
Nyerguds

Answers:


394

尝试将键盘快捷键Ctrl- - 。Shift 如果您更改了默认值,则Space此对应于Edit.ParameterInfo

例:

描述性屏幕截图,通过jp2code


41
至少在VS 2008中,看来光标必须在括号内才能使此快捷方式正常工作。另外,感谢您的发帖,我不知道这个存在!
奇斯瓦2012年

2
现在,只有一种方法可以默认实现此目的。
Mike Lowery

在VS2017中,被诅咒者也必须放在括号内。
Mohammed Noureldin

在vscode中,它也起作用,您可以使用Alt + UpAlt + Down在它们之间导航。
Juan De la Cruz

60

Ctrl+ Shift+ Space显示Edit.ParameterInfo所选方法的,对于所选方法,我的意思是插入符号必须在方法括号内。

这是Visual Studio 2010键绑定海报

对于仍在使用2008的用户


3
哇,您的键盘标记现在看起来比我的性感!我不能让这种事情发生!
aardvarkk 2012年

+1,如果Neil告诉我如何在此操作,则另外为+1。
jp2code 2012年

11
您使用<kbd> </ kbd>标签
Neil Knight

对我而言,在VS2017上,这似乎是:Ctrl + Shift + Space,Space
andrew pate

50

仅在Visual Studio 2010上测试。

将光标放在()上,按Ctrl+ K,然后按P

现在按 ↑  /  ↓  箭头键导航。


也许我做错了什么,但是我无法在VS2008或VS2010中使用。
jp2code 2012年

1
这是VS2010的快捷方式(不确定2008),但是您可能更改了它或安装的工具劫持了该快捷方式。
亚历克斯在巴黎2012年

这就是我想要的。在IntelliJIdea / Android Studio中类似于Ctrl + Q的东西。
DaMachk '16

19

缺省的键绑定是Ctrl+ Shift+ Space。基本的Visual Studio命令是Edit.ParameterInfo

如果标准键盘绑定不适用于您(在某些配置文件中可能),则可以通过键盘选项页面进行更改

  • 工具->选项
  • 键盘
  • 输入Edit.ParameterInfo
  • 更改快捷键
  • 点击分配

1
非常好!对于另外+1,您能告诉我如何创建该Ctrl+Shift+Space图形吗?
jp2code 2012年

8
@ jp2code使用<kbd>标记创建图形。示例<kbd>Shift</kbd>
JaredPar 2012年

3
@ jp2code,如果在编辑模式下打开,则还可以看到使用的标签。
radbyx 2014年

在Visual Studio 2015中,如果这不适用于您,请确保尝试以下操作:stackoverflow.com/a/31087682/68905 我必须这样做才能使其正常工作。
jakejgordon

10

碰巧上述方法均无效。键绑定是正确的,但无论如何都不会显示工具提示,无论是作为完成帮助还是按需显示。

要解决此问题,只需转到“ 工具\文本编辑器\ C#(或所有语言)”,然后检查“ 参数信息 ”即可。现在应该可以了


7

好问题;我遇到过同样的问题。事实证明,确实有一个键盘快捷方式可以显示此列表:Ctrl + Shift + Space(Ctrl + Space基本IntelliSense快捷方式的变体)。


5
  • 该命令Edit.ParameterInfo(映射到Ctrl+ Shift+Space如果光标在方法调用的参数括号内时调用默认情况下),则会显示重载工具提示。

  • 该命令Edit.QuickInfo(默认情况下映射为Ctrl+ KCtrl+ I)将显示工具提示,如果您将鼠标悬停在光标位置上将会看到该提示。


2

上面的建议偶尔会停止工作,但是如果我重新启动Visual Studio,它们会再次开始工作。


1

我知道这是一篇旧文章,但是对于像我这样的新手来说,仍然点击此页面可能会很有用。当您将鼠标悬停在某个方法上时,您将获得一个不可单击的信息框,而如果您仅在方法括号中写了一个逗号,IntelliSense将为您提供带有可单击箭头的心爱的信息框。


那不是同一回事。这就是您可以输入的值的IntelliSense。而不是过载窗口。为此,您可以执行Ctrl + Space
Mastro

0

我的名字写在第一个括号之后出现在VS2010中。

因此,prams.Add(

完成类似操作后,出现带有向上和向下箭头的框。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.