IntelliSense in Visual Studio
IntelliSense è un aiuto per il completamento del codice che include funzionalità che consentono di ottenere altre informazioni sul codice in uso, tenere traccia dei parametri digitati e aggiungere chiamate a proprietà e metodi con poche sequenze di tasti.
Queste funzionalità includono:
Molti aspetti di IntelliSense sono specifici del linguaggio. Per altre informazioni su IntelliSense per lingue diverse, vedere gli articoli elencati nella sezione Contenuto correlato.
Lista Membri
Un elenco di membri validi di un tipo (o spazio dei nomi) viene visualizzato dopo aver digitato un carattere trigger (ad esempio, un punto (.
) nel codice gestito o ::
in C++). Se si continua a digitare caratteri, l'elenco viene filtrato in modo da includere solo i membri che iniziano con i caratteri o dove l'inizio di qualsiasi parola all'interno del nome inizia con tali caratteri. IntelliSense esegue anche case camel corrispondenza, in modo da poter digitare solo la prima lettera di ogni parola con maiuscole e minuscole camel nel nome del membro per visualizzare le corrispondenze.
Dopo aver selezionato un elemento, puoi inserirlo nel codice premendo Tab o digitando uno spazio. Se si seleziona un elemento e si digita un punto, l'elemento compare seguito dal punto, il che fa apparire un altro elenco di membri. Quando si seleziona un elemento ma prima di inserirlo, si ottiene Informazioni rapide per l'elemento.
Nell'elenco dei membri l'icona a sinistra rappresenta il tipo di membro, ad esempio spazio dei nomi, classe, funzione o variabile. L'elenco potrebbe essere lungo, quindi è possibile premere PgUp e PgDn per spostarsi verso l'alto o verso il basso nell'elenco.
È possibile richiamare manualmente la funzionalità Membri elenco digitando CTRL+J, scegliendo Modifica>IntelliSense>Elenca membrioppure scegliendo il pulsante Elenco membri sulla barra degli strumenti dell'editor. Quando viene richiamato su una riga vuota o all'esterno di un ambito riconoscibile, l'elenco visualizza i simboli nello spazio dei nomi globale.
Per disattivare Elenco membri per impostazione predefinita, in modo che non venga visualizzato a meno che non venga richiamato specificamente, passare a Strumenti di >Opzioni>Editor di testo>Tutte le lingue e deselezionare Elenco membri automatico. Se si desidera disattivare Elenca membri solo per una lingua specifica, passare alle impostazioni Generale per tale lingua.
È anche possibile passare alla modalità di suggerimento, in cui nel codice viene inserito solo il testo digitato. Ad esempio, se si immette un identificatore che non si trova nell'elenco e si preme Tab, la voce sostituisce l'identificatore tipizzato in modalità di completamento. Per passare dalla modalità di completamento alla modalità di suggerimento, premere CTRL+ALT+Spaziooppure scegliere Modifica>IntelliSense>Attiva/Disattiva modalità di completamento.
È anche possibile passare alla modalità di suggerimento, in cui nel codice viene inserito solo il testo digitato. Ad esempio, se si immette un identificatore che non si trova nell'elenco e si preme Tab, in modalità di completamento la voce sostituirà l'identificatore tipizzato. Per passare dalla modalità di completamento a quella di suggerimento, premere Ctrl+Alt+Spazio, oppure scegliere Modifica>IntelliSense>Cambia tra completamento IntelliSense automatico e a sola scheda.
Informazioni sui parametri
informazioni sui parametri fornisce informazioni sul numero, i nomi e i tipi di parametri richiesti da un metodo, un parametro di tipo generico attributo (in C#) o un modello (in C++).
Il parametro in grassetto indica il parametro successivo necessario durante la digitazione della funzione. Per le funzioni sovraccariche, è possibile usare i tasti freccia Su e Giù per visualizzare informazioni sui parametri alternativi delle funzioni sovraccariche.
Quando si annotano funzioni e parametri con commenti della documentazione XML, i commenti vengono visualizzati come Informazioni sui parametri. Per altre informazioni, vedere Fornire commenti di codice XML.
È possibile richiamare manualmente le informazioni sui parametri scegliendo Modifica>IntelliSense>Informazioni sui parametri, premendo CTRL+MAIUSC+Spaziooppure scegliendo il pulsante Informazioni parametro sulla barra degli strumenti dell'editor.
Informazioni rapide
Info rapide visualizza la dichiarazione completa per qualsiasi identificatore nel tuo codice.
Quando si seleziona un membro nella casella Membri elenco, vengono visualizzate anche informazioni rapide.
È possibile richiamare manualmente informazioni rapide scegliendo Modifica>IntelliSense>Informazioni rapide, premendo CTRL+K, CTRL+oppure scegliendo il pulsante informazioni rapide sulla barra degli strumenti dell'editor.
Se una funzione è in overload, IntelliSense potrebbe non visualizzare informazioni per tutte le forme dell'overload.
È possibile disattivare Informazioni rapide per il codice C++ passando a Strumenti di >Opzioni>Editor di testo>C/C++>avanzatee impostando Informazioni rapide automatiche su false
.
Completamento di Word
Completa parola completa il resto di una variabile, di un comando o di un nome di funzione dopo che hai immesso un numero sufficiente di caratteri per disambiguare il termine. È possibile richiamare Completa Parola scegliendo Modifica>IntelliSense>Completa Parola, premendo Ctrl+Spaziooppure scegliendo il pulsante Completa Parola sulla barra degli strumenti dell'editor.
Opzioni di IntelliSense
Le opzioni di IntelliSense sono attivate per impostazione predefinita. Per disattivarli, passare a Strumenti di >Opzioni>Editor di testo>Tutti i Linguaggi e deselezionare Informazioni sui parametri o Membri dell'elenco automatici se non si desidera la funzionalità Membri dell'elenco.
Suggerimento
Per modificare l'aspetto degli elementi dell'interfaccia utente in Visual Studio, passare a Strumenti di >Opzioni>Ambiente>Tipi di carattere e colori. Per altre informazioni su queste impostazioni e su come interagire con essi, vedere tipi di carattere e colori, ambiente, finestra di dialogo Opzioni.
Icone di IntelliSense
Le icone in IntelliSense possono trasmettere significato aggiuntivo con modificatori di icone. Si tratta di stelle, cuori e lucchetti sovrapposti sull'icona dell'oggetto, che indicano rispettivamente un significato protetto, interno o privato.
Icona | Accessibilità | Descrizione |
---|---|---|
![]() |
Classe pubblica | L'accesso non è limitato. |
![]() |
Classe protetta | L'accesso è limitato alla classe contenitore o ai tipi derivati dalla classe contenitore. |
![]() |
Classe interna protetta | L'accesso è limitato all'assembly corrente o ai tipi derivati della classe contenitrice. |
![]() |
Classe interna | L'accesso è limitato all'assemblaggio corrente. |
![]() |
Classe privata | L'accesso è limitato alla classe contenitrice o ai tipi derivati dalla classe contenitrice all'interno dell'assembly corrente. Disponibile a partire da C# 7.2. |
Risolvere i problemi di IntelliSense
Le opzioni di IntelliSense potrebbero non funzionare come previsto in alcuni casi.
Il cursore è sotto un errore di codice: potrebbe non essere possibile usare IntelliSense se nel codice sopra il cursore esiste una funzione incompleta o un altro errore perché IntelliSense potrebbe non essere in grado di analizzare gli elementi di codice. È possibile risolvere questo problema commentando il codice applicabile.
Il cursore si trova in un commento di codice: non è possibile usare IntelliSense se il cursore si trova in un commento nel file di origine.
Il cursore si trova in un valore letterale stringa: non è possibile usare IntelliSense se il cursore si trova tra virgolette intorno a un valore letterale stringa, come nell'esempio seguente:
MessageBox( hWnd, "String literal|")
Le opzioni automatiche sono disattivate: per impostazione predefinita, IntelliSense funziona automaticamente, ma è possibile disabilitarla. Anche se il completamento automatico delle istruzioni è disabilitato, è possibile richiamare una funzionalità IntelliSense.