Usare frammenti di codice in Visual Studio

I frammenti di codice sono piccoli blocchi di codice riutilizzabili che è possibile aggiungere a un file di codice. I frammenti di codice di solito contengono costrutti usati frequentemente, come i blocchi Try...Finally o If...Else. È anche possibile usare frammenti di codice per aggiungere intere classi o metodi.

Un frammento di codice ha un titolo che usi per selezionarlo e può avere una scorciatoia da digitare per inserirlo. I frammenti di codice possono anche contenere parametri di sostituzione, che fungono da segnaposto. Visual Studio fornisce frammenti di codice per molti linguaggi, tra cui C#, C++e Visual Basic.

Prerequisiti

  • Visual Studio con supporto installato per il linguaggio di programmazione che si vuole usare. I frammenti di codice disponibili dipendono dai carichi di lavoro installati e dai componenti del linguaggio.
  • Un file di codice aperto nell'editor e riconosciuto dal servizio di linguaggio appropriato. Per l'esempio C++, aprire un .cpp file o .h .

Informazioni sui tipi di frammento di codice

Visual Studio supporta due tipi di frammenti di codice:

  • Un frammento di espansione aggiunge codice in corrispondenza di un punto di inserimento specificato.
  • Uno snippet surround-with aggiunge codice attorno al codice selezionato. I frammenti di codice racchiudi sono disponibili solo per C# e C++.

Trovare frammenti di codice disponibili

Per visualizzare i frammenti di codice installati per un linguaggio, selezionare Strumenti>Gestione frammenti di codice oppure premere CTRL+K, CTRL+B. In Gestione frammenti di codice selezionare una lingua dall'elenco Lingua .

Per creare e importare un frammento personalizzato in modo che venga visualizzato nell'elenco dei frammenti di codice, vedere Procedura dettagliata: Creare un frammento di codice in Visual Studio.

Note

I tasti di scelta rapida possono variare in base al profilo delle impostazioni, al contesto, al layout della tastiera e ai tasti personalizzati. Per trovare l'associazione per un comando, vedere Identificare e personalizzare i tasti di scelta rapida.

Inserire un frammento di espansione

Un frammento di espansione inserisce il codice nel punto di inserimento. Ad esempio, il frammento di codice C# tryf aggiunge un try/finally blocco:

try
{

}
finally
{

}

È necessario inserire il tryf frammento di codice in cui un'istruzione è valida, ad esempio all'interno di un metodo, un indicizzatore, una funzione di accesso alle proprietà o una funzione di accesso agli eventi.

  1. Nell'editor di codice posizionare il cursore in cui si vuole aggiungere il frammento di codice.

  2. Effettua una delle seguenti azioni:

    • Sulla barra dei menu selezionare Modifica>intelliSense>Inserisci frammento.
    • Fare clic con il pulsante destro del mouse e selezionare Snippet>Inserisci frammento di codice.
    • Premere CTRL+K, CTRL+X.
  3. Nella selezione frammenti di codice aprire la cartella Visual C# e quindi fare doppio clic su tryf. È anche possibile selezionare tryf e premere TAB o INVIO.

Il try/finally blocco viene visualizzato nel punto di inserimento, pronto per la personalizzazione.

Suggerimento

In un punto di inserimento valido digitare tryfe quindi premere TAB due volte per espandere il frammento di codice senza aprire la selezione frammento.

Racchiudere il codice selezionato con un frammento di codice

Un frammento di codice "Racchiudi con" racchiude il codice selezionato. Ad esempio, il frammento di codice C++ if racchiude la riga selezionata return FALSE; in un blocco if:

if (true)
{
    return FALSE;
}

Per racchiudere il codice C++ selezionato:

  1. In un file .cpp o .h, seleziona il codice che vuoi racchiudere.

  2. Effettua una delle seguenti azioni:

    • Nella barra dei menu, selezionare Modifica>IntelliSense>Racchiudi con.
    • Fare clic con il pulsante destro del mouse e selezionare Racchiudi con.
  3. Nel selettore di frammenti di codice, fare doppio clic su if oppure selezionare if e premere Tab o Invio.

Il if blocco viene visualizzato intorno al codice selezionato. Sostituire il true segnaposto con la condizione da valutare.

Per altri esempi di frammenti di codice C++, vedere Frammenti di codice di Visual C++.

Modificare i campi di sostituzione

I frammenti di codice possono contenere campi di sostituzione personalizzati dopo l'inserimento. Quando lo stesso campo viene visualizzato più volte, la modifica di un'occorrenza modifica tutte le occorrenze collegate. Premere TAB per passare al campo di sostituzione successivo.

Ad esempio, il Visual Basic Definire un frammento di proprietà contiene campi collegati per la variabile di supporto, il nome della proprietà e il tipo di proprietà. Per inserirlo:

  1. In un file di codice Visual Basic fare clic con il pulsante destro del mouse su dove si desidera inserire la proprietà e quindi selezionareFrammento di codice inserisci frammento>.
  2. Selezionare Modelli di codice>Proprietà, Routine, Eventi>Definire una Proprietà.

Screenshot dello strumento di selezione del frammento di codice Visual Basic con Definisci una proprietà selezionata in Proprietà, Routine, Eventi.

Viene inserito il codice seguente:

Private newPropertyValue As String
Public Property NewProperty() As String
    Get
        Return newPropertyValue
    End Get
    Set(ByVal value As String)
        newPropertyValue = value
    End Set
End Property

Se si cambia newPropertyValue in m_property, ogni istanza collegata di newPropertyValue viene modificata. Se si modifica il tipo di proprietà da String a Integer, ogni istanza collegata di String viene modificata in Integer.

Risolvere i problemi relativi ai frammenti di codice

Se un frammento o un comando non è disponibile:

  • Verificare che Visual Studio riconosca il file come linguaggio di programmazione previsto.
  • Verificare che sia installato il carico di lavoro o il componente linguistico richiesto.
  • In Strumenti>Code Snippets Manager verificare che il frammento di codice sia installato per la lingua selezionata.
  • Se una scelta rapida da tastiera non funziona come previsto, usare Identificare e personalizzare i tasti di scelta rapida per cercare l'associazione corrente del comando.
  • Verificare che il punto di inserimento sia valido per il frammento selezionato. Ad esempio, alcuni frammenti di codice C# sono validi solo all'interno di un metodo o di una dichiarazione di tipo. Per i percorsi di inserimento C# validi, vedere Frammenti di codice C#.

Esaminare il codice inserito tramite snippet

Il codice del frammento di codice mostra un modo di base per eseguire un'attività. Esaminare e adattare il codice generato prima di usarlo in un'applicazione. Si consideri come il codice gestisce le eccezioni, accede alle risorse, convalida l'input e protegge i segreti.

Trattare frammenti scaricati da Internet come altro codice scaricato. Scaricare frammenti di codice solo da origini attendibili ed esaminare il codice e i metadati del frammento di codice prima di importarli o eseguirli.

Nei progetti di .NET Framework un frammento di codice può usare l'elemento References per aggiungere riferimenti al progetto. Esamina gli elementi Imports e References e verifica di considerare attendibili gli assembly a cui viene fatto riferimento. Per altre informazioni, vedere Importare uno spazio dei nomi e le informazioni di riferimento sullo schema dei frammenti di codice.

Vedere anche