Fragmentos de códigoCode snippets

Los fragmentos de código son pequeños bloques de código reutilizable que se pueden insertar en un archivo de código mediante un comando de menú contextual o una combinación de teclas de acceso rápido.Code snippets are small blocks of reusable code that can be inserted in a code file using a right-click menu (context menu) command or a combination of hotkeys. Normalmente contienen bloques de código usados con mucha frecuencia, como bloques try-finally o if-else, pero pueden usarse también para insertar clases o métodos completos.They typically contain commonly used code blocks such as try-finally or if-else blocks, but they can be used to insert entire classes or methods.

Note

Este tema se aplica a Visual Studio para Windows.This topic applies to Visual Studio on Windows. En el caso de Visual Studio para Mac, vea Fragmentos de código (Visual Studio para Mac).For Visual Studio for Mac, see Code snippets (Visual Studio for Mac).

Hay fragmentos de código disponibles para una gran variedad de lenguajes, entre otros, C#, C++, Visual Basic, XML y T-SQL.Code snippets are available for a multitude of languages, including C#, C++, Visual Basic, XML, and T-SQL, to name a few. Para ver todos los fragmentos de código instalados disponibles de un lenguaje, abra el Administrador de fragmentos de código desde el menú Herramientas (o bien, presione Ctrl+K, Ctrl+B) y elija el lenguaje en el menú desplegable de la parte superior.To view all the available installed snippets for a language, open the Code Snippets Manager from the Tools menu (or, press Ctrl+K, Ctrl+B), and choose the language from the drop-down menu at the top.

Cuadro de diálogo Administrador de fragmentos de código

Estas son las formas en general de tener acceso a los fragmentos de código:Code snippets can be accessed in the following general ways:

  • En la barra de menús, elija Edición > IntelliSense > Insertar fragmento de código.On the menu bar, choose Edit > IntelliSense > Insert Snippet

  • En el menú contextual del editor de código, elija Fragmento de código > Insertar fragmento de código.From the right-click or context menu in the code editor, choose Snippet > Insert Snippet

  • En el teclado, presione Ctrl+K,Ctrl+XFrom the keyboard, press Ctrl+K,Ctrl+X

Fragmentos de código de expansión y fragmentos de código envolventesExpansion snippets and surround-with snippets

En Visual Studio hay dos tipos de fragmento de código: los fragmentos de código de expansión, que se agregan en un punto de inserción especificado y se pueden reemplazar por un método abreviado de fragmento de código, y los fragmentos de código rodear con (solo en C# y C++), que se agregan alrededor de un bloque de código seleccionado.In Visual Studio there are two kinds of code snippet: expansion snippets, which are added at a specified insertion point and may replace a snippet shortcut, and surround-with snippets (C# and C++ only), which are added around a selected block of code.

Un ejemplo de un fragmento de código de expansión: en C# se utiliza el método abreviado tryf para insertar un bloque try-finally:An example of an expansion snippet: in C# the shortcut tryf is used to insert a try-finally block:

try
{

}
finally
{

}

Para insertar este fragmento de código, haga clic en Insertar fragmento de código en el menú contextual de la ventana de código y, después, en Visual C# , escriba tryf y presione la tecla TAB. También puede escribir tryf y presionar TAB dos veces.You can insert this snippet by clicking Insert Snippet in the right-click menu (context menu) of the code window, then Visual C#, then type tryf, and then press Tab. Or, you can type tryf and press Tab twice.

Un ejemplo de un fragmento de código rodear con: en el acceso directo de C++ if se puede utilizar como un fragmento de código de inserción o como un fragmento de código rodear con.An example of a surround-with snippet: in C++ the shortcut if can be used either as an insertion snippet or as a surround-with snippet. Si selecciona una línea de código (por ejemplo, return FALSE;) y, después, hace clic en Envolver con > if, el fragmento de código se expandirá alrededor de la línea:If you select a line of code (for example return FALSE;), and then choose Surround With > if, the snippet is expanded around the line:

if (true)
{
    return FALSE;
}

Parámetros de reemplazo de fragmentos de códigoSnippet replacement parameters

Los fragmentos de código pueden contener parámetros de reemplazo, que son marcadores de posición que debe reemplazar para incluir el código exacto que está escribiendo.Snippets can contain replacement parameters, which are placeholders that you must replace to fit the precise code you are writing. En el ejemplo anterior true es un parámetro de reemplazo, que podría reemplazar por la condición adecuada.In the previous example true is a replacement parameter, which you would replace with the appropriate condition. El reemplazo que haga se repetirá por cada instancia del mismo parámetro de reemplazo del fragmento de código.The replacement you make is repeated for every instance of the same replacement parameter in the snippet.

Por ejemplo, en Visual Basic hay un fragmento de código que inserta una propiedad.For example, in Visual Basic there's a code snippet that inserts a property. Para insertar el fragmento de código, elija Fragmento de código > Insertar fragmento de código en el menú contextual en un archivo de código de Visual Basic.To insert the snippet, choose Snippet > Insert Snippet from the right-click or context menu in a Visual Basic code file. Luego, elija Patrones de código > Propiedades, procedimientos, eventos > Definir una propiedad.Then, choose Code Patterns > Properties, Procedures, Events > Define a Property.

Opción Definir una propiedad del menú Fragmento de código

Se inserta el siguiente código:The following code is inserted:

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

Si cambia newPropertyValue por m_property, se cambian todas las instancias de newPropertyValue.If you change newPropertyValue to m_property, then every instance of newPropertyValue is changed. Si cambia String por Int en la declaración de la propiedad, también se cambia a Int el valor en el método set.If you change String to Int in the property declaration, then the value in the set method is also changed to Int.

Vea tambiénSee also