Visual Studio: ¿Cómo mostrar sobrecargas en IntelliSense?

251

Una vez que se ha escrito el código, la única manera que conozco para ver las sobrecargas de un método es editarlo eliminando el paréntesis ()y volviéndolo a abrir.

¿Hay una tecla de acceso directo que podría presionar para activar esto en lugar de tener que editar mis archivos?

Para ver un ejemplo, consulte la captura de pantalla ShowDialog Overload a continuación:

ShowDialog1 Sobrecargas

jp2code
fuente
66
¿Qué pasó con las viejas flechas arriba y abajo?
Zapnologica
3
@Zapnologica: las flechas hacia arriba y hacia abajo todavía existen, pero el cuadro IntelliSense debe activarse y abrirse antes de que esas flechas puedan usarse para desplazarse por las opciones de sobrecarga. Esta pregunta trata sobre cómo abrir el cuadro IntelliSense .
jp2code
3
¿Cómo puede hacer que se abra de forma predeterminada, el espacio de control vs espacio de cambio de control
Zapnologica
66
@Zapnologica: uso la secuencia Control + Shift + Space , como la combinación anterior Control + Alt + Delete .
jp2code
En VS2012, solía abrirse por defecto cuando escribía un paréntesis abierto después del nombre de una función, pero ya no parece hacerlo desde que instalé ReSharper. En cambio, ofrece un menú desplegable de posibles variables / funciones para completar en el primer argumento. Bastante molesto.
Nyerguds

Respuestas:

394

Pruebe el método abreviado de teclado Ctrl- Shift- Space. Esto corresponde a Edit.ParameterInfo, en caso de que haya cambiado el valor predeterminado.

Ejemplo:

captura de pantalla descriptiva, por jp2code

aardvarkk
fuente
41
Al menos en VS 2008, parece que su cursor debe estar entre paréntesis para que este acceso directo funcione. Además, gracias por publicar, ¡no sabía que esto existía!
kiswa
2
Ahora, si solo hubiera una manera de hacer que esto suceda de forma predeterminada.
Mike Lowery
En VS2017, el maldito debe estar también entre paréntesis.
Mohammed Noureldin
En vscode esto también funciona y puedes usarlo Alt + Upo Alt + Downnavegar entre ellos.
Juan De la Cruz
60

Ctrl+ Shift+ Spacemuestra el Edit.ParameterInfopara el método seleccionado, y por método seleccionado quiero decir que el cursor debe estar entre paréntesis del método.

Aquí está el cartel de Visual Studio 2010 Keybinding .

Y para aquellos que todavía usan 2008 .

Neil Knight
fuente
3
¡Vaya, el tuyo ahora se ve mucho más sexy que el mío con tus elegantes etiquetas de teclado! ¡No puedo dejar que esto suceda!
aardvarkk
+1, y otro +1 para Neil si me dijera cómo hacer eso aquí.
jp2code
11
Utiliza etiquetas <kbd> </kbd>
Neil Knight,
Para mí en VS2017 esto parece ser: Ctrl + Shift + Space, Space
andrew pate
50

Probado solo en Visual Studio 2010.

Coloque el cursor dentro de (), presione Ctrl+ Ky luego P.

Ahora navegue presionando las teclas de flecha  ↑  /  ↓  .

Alex en París
fuente
Quizás estoy haciendo algo mal, pero no puedo hacer que esto funcione en VS2008 o VS2010.
jp2code
1
Es un acceso directo VS2010 (no estoy seguro sobre 2008), pero es posible que lo haya cambiado o que una herramienta que instaló haya secuestrado el acceso directo.
Alex en París
Esto es lo que estaba buscando. Algo similar a Ctrl + Q en IntelliJIdea / Android Studio.
DaMachk
19

La asociación de teclas predeterminada para esto es Ctrl+ Shift+ Space. El comando subyacente de Visual Studio es Edit.ParameterInfo.

Si la combinación de teclas estándar no funciona para usted (posible en algunos perfiles), puede cambiarla a través de la página de opciones del teclado

  • Herramientas -> Opciones
  • Teclado
  • Escriba Edit.ParameterInfo
  • Cambiar la tecla de acceso directo
  • Hit Assign
JaredPar
fuente
1
¡Muy agradable! Para otro +1, ¿podría decirme cómo crear ese Ctrl+Shift+Spacegráfico?
jp2code
8
@ jp2code para crear el gráfico use las <kbd>etiquetas. Ejemplo<kbd>Shift</kbd>
JaredPar
3
@ jp2code, si abre en modo de edición, también puede ver las etiquetas utilizadas.
radbyx
En Visual Studio 2015, si esto no funciona, asegúrese de probar esto: stackoverflow.com/a/31087682/68905 Tuve que hacer esto para que funcione.
jakejgordon
10

Sucede que ninguno de los métodos anteriores funciona. La asignación de teclas es adecuada, pero la información sobre herramientas simplemente no se muestra en ningún caso, ni como ayuda de finalización ni bajo demanda.

Para solucionarlo, vaya a Herramientas \ Editor de texto \ C # (o todos los idiomas) y verifique ' Información de parámetros '. Ahora debería funcionar

mikus
fuente
7

Gran pregunta; Tuve el mismo problema. Resulta que de hecho hay un atajo de teclado para que aparezca esta lista: Ctrl + Shift + Space (una variación del atajo básico IntelliSense de Ctrl + Space).

KeithS
fuente
5
  • El comando Edit.ParameterInfo(asignado a Ctrl+ Shift+ Spacede forma predeterminada) mostrará la información sobre herramientas de sobrecarga si se invoca cuando el cursor está dentro de los paréntesis de parámetros de una llamada a método.

  • El comando Edit.QuickInfo(asignado a Ctrl+ KCtrl+ Ide forma predeterminada) mostrará la información sobre herramientas que vería si pasa el mouse sobre la ubicación del cursor.

Dave
fuente
2

De vez en cuando, las sugerencias anteriores dejan de funcionar, si reinicio Visual Studio, comienzan a funcionar nuevamente.

Phylliida
fuente
1

Sé que esta es una publicación antigua, pero para los novatos como yo que todavía visitamos esta página, esto podría ser útil. cuando pasas el mouse sobre un método, obtienes un cuadro de información que no se puede hacer clic, mientras que si solo escribes una coma en el paréntesis del método, IntelliSense te ofrecerá el querido cuadro de información con las flechas en las que se puede hacer clic.

Ylenia88m
fuente
Eso no es lo mismo. Ese es el IntelliSense de los valores que puede poner. No la ventana de sobrecargas. Para eso puedes hacer Ctrl + Space
Mastro
0

La mía apareció en VS2010 después de escribir el primer paréntesis.

entonces, cochecitos.

Después de hacer algo así, apareció la caja con las flechas hacia arriba y hacia abajo.

eaglei22
fuente