Visual Studio: come mostrare i sovraccarichi in IntelliSense?


251

Una volta che il codice è stato scritto, l'unico modo che conosco per visualizzare i sovraccarichi di un metodo è in realtà modificare il metodo eliminando la parentesi ()e riaprendoli.

Esiste un tasto di scelta rapida che potrei premere per attivare questo invece di dover modificare i miei file?

Per un esempio, fare riferimento alla schermata di sovraccarico ShowDialog di seguito:

ShowDialog1 Overload


6
Che cosa è mai successo alle buone vecchie frecce su e giù?
Zapnologica,

3
@Zapnologica: le frecce Su e Giù esistono ancora, ma la casella IntelliSense deve essere attivata e aperta prima di poter usare quelle frecce per scorrere le opzioni di sovraccarico. Questa domanda riguarda come aprire la finestra di IntelliSense .
jp2code,

3
Come puoi aprirlo di default, control space vs control shift space
Zapnologica

6
@Zapnologica: utilizzo la sequenza Control + Shift + Space , come la vecchia combinazione Control + Alt + Delete .
jp2code,

In VS2012 si apriva di default quando scrivevo una parentesi aperta dopo il nome di una funzione, ma non sembra farlo più da quando ho installato ReSharper. Invece, fornisce un menu a discesa di possibili variabili / funzioni da riempire nel primo argomento. Abbastanza fastidioso.
Nyerguds,

Risposte:


394

Prova la scorciatoia da tastiera Ctrl- Shift- Space. Ciò corrisponde a Edit.ParameterInfo, nel caso in cui sia stata modificata l'impostazione predefinita.

Esempio:

screenshot descrittivo, di jp2code


41
Almeno in VS 2008, il cursore deve trovarsi tra parentesi affinché questa scorciatoia funzioni. Inoltre, grazie per la pubblicazione, non sapevo che esistesse!
kiswa,

2
Ora, se c'era solo un modo per farlo accadere per impostazione predefinita.
Mike Lowery,

In VS2017 il maledetto deve essere anche tra parentesi.
Mohammed Noureldin,

In vscode funziona anche questo e puoi usare Alt + Upo Alt + Downnavigare tra di loro.
Juan De la Cruz,

60

Ctrl+ Shift+ Spacemostra il Edit.ParameterInfoper il metodo selezionato e per metodo selezionato intendo che il punto di inserimento deve essere tra parentesi del metodo.

Ecco il poster di associazione dei tasti di Visual Studio 2010 .

E per quelli che usano ancora il 2008 .


3
Whoa, il tuo ora sembra molto più sexy del mio con i tuoi tag di tastiera fantasiosi! Non posso permettere che questo accada!
aardvarkk,

+1 e un altro +1 per Neil se mi dicesse come farlo qui.
jp2code

11
Usa i tag <kbd> </kbd>
Neil Knight il

Per me su VS2017 questo sembra essere: Ctrl + Maiusc + Spazio, Spazio
andrew pate

50

Testato solo su Visual Studio 2010.

Posiziona il cursore su (), premi Ctrl+ K, quindi P.

Ora naviga premendo i tasti freccia  ↑  /  ↓  .


Forse sto facendo qualcosa di sbagliato, ma non riesco a farlo funzionare in VS2008 o VS2010.
jp2code

1
È un collegamento VS2010 (non sono sicuro del 2008), ma è possibile che tu l'abbia cambiato o uno strumento che hai installato ha dirottato il collegamento.
Alex In Paris,

Questo è quello che stavo cercando. Qualcosa di simile a Ctrl + Q in IntelliJIdea / Android Studio.
DaMachk,

19

L'associazione chiave predefinita per questo è Ctrl+ Shift+ Space. Il comando di Visual Studio sottostante èEdit.ParameterInfo .

Se il keybinding standard non funziona per te (possibile in alcuni profili), puoi modificarlo tramite la pagina delle opzioni della tastiera

  • Strumenti -> Opzioni
  • Tastiera
  • Digita Edit.ParameterInfo
  • Cambia il tasto di scelta rapida
  • Premi Assegna

1
Molto bella! Per un altro +1, potresti dirmi come creare quella Ctrl+Shift+Spacegrafica?
jp2code

8
@ jp2code per creare l'immagine utilizzare i <kbd>tag. Esempio<kbd>Shift</kbd>
JaredPar il

3
@ jp2code, se apri in modalità modifica, puoi anche vedere i tag utilizzati.
Radbyx,

In Visual Studio 2015 se questo non funziona per te assicurati di provare questo: stackoverflow.com/a/31087682/68905 Ho dovuto farlo per farlo funzionare.
jakejgordon,

10

Succede che nessuno dei metodi precedenti funzioni. L'associazione dei tasti è corretta, ma la descrizione non viene visualizzata in nessun caso, né come aiuto per il completamento né su richiesta.

Per risolverlo basta andare su Strumenti \ Editor di testo \ C # (o tutte le lingue) e controllare le " Informazioni sui parametri ". Ora dovrebbe funzionare


7

Grande domanda; Ho avuto lo stesso problema. Si scopre che esiste davvero una scorciatoia da tastiera per visualizzare questo elenco: Ctrl + Maiusc + Spazio (una variante della scorciatoia di base IntelliSense di Ctrl + Spazio).


5
  • Il comando Edit.ParameterInfo(mappato su Ctrl+ Shift+ Spaceper impostazione predefinita) mostrerà la descrizione del sovraccarico se viene richiamato quando il cursore si trova all'interno delle parentesi dei parametri di una chiamata di metodo.

  • Il comando Edit.QuickInfo(mappato su Ctrl+ KCtrl+ Iper impostazione predefinita) mostrerà la descrizione che vedresti se ti posizionassi sopra la posizione del cursore.


2

Di tanto in tanto i suggerimenti sopra smettono di funzionare, se riavvio Visual Studio, però, riprendono a funzionare.


1

So che questo è un vecchio post, ma per i neofiti come me che continuano a visitare questa pagina potrebbe essere utile. quando passi con il mouse su un metodo ottieni una casella informativa non cliccabile mentre se scrivi una virgola nella parentesi del metodo IntelliSense ti offrirà la casella informativa amata con le frecce cliccabili.


non è la stessa cosa. Questo è IntelliSense di quali valori puoi inserire. Non la finestra dei sovraccarichi. Per questo puoi semplicemente fare Ctrl + Spazio
Mastro

0

Il mio si è presentato in VS2010 dopo aver scritto la prima parentesi.

così, prams.Add (

Dopo aver fatto qualcosa del genere, è apparso il riquadro con le frecce su e giù.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.