Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

How to: Create a New Snippet with Replacements

You may have portions of code snippets that you want to be replaced by the person inserting them. This is useful if you want to reference a specific variable or object, and want the user to be able to replace the variable or object with one in his or her project. IntelliSense Code Snippets provide this ability with the Literal and Object elements.

Once a code snippet is inserted, you can access all the possible replacement objects in your code by clicking on the replacement and pressing CTRL+Space.

The Literal element is used to identify a replacement for a piece of code that is entirely contained within the snippet, but will likely be customized after it is inserted into the code. For example, literal strings, numeric values, and some variable names should be declared as literals.

This procedure assumes that you have followed the procedures explained in the How to: Create a Basic Code Snippet topic.

To create a literal replacement

  1. Locate the Snippet element of the code snippet.

  2. Add a Declarations element as a child of the Snippet element. The Declarations element is used to group replacement declarations.

  3. Add a Literal element as a child of the Declarations element. The Literal element specifies an individual literal. A code snippet may have more than one literal replacement.

  4. Add an ID element as a child of the Literal element. The text value of this element specifies the name that you will use to reference the literal in the Code element.

  5. Add a Default element as a child of the Literal element. The text value of the Default element specifies the default value of the literal when you insert the code snippet.

  6. Optionally, add the Function and/or ToolTip elements.

The Object element is used to identify an item that is required by the code snippet but is likely to be defined outside of the snippet itself. For example, Windows Forms controls, ASP.NET controls, object instances, and type instances should be declared as objects. Object declarations require that a type be specified.

This procedure assumes that you have followed the procedures explained in the How to: Create a Basic Code Snippet topic.

To create an object replacement

  1. Locate the Snippet element of the code snippet.

  2. Add a Declarations element as a child of the Snippet element. The Declarations element is used to group replacement declarations.

  3. Add an Object element as a child of the Declarations element. The Object element specifies an individual object. A code snippet may have more than one object replacement.

  4. Add an ID element as a child of the Object element. The text value of this element specifies the name that you will use to reference the object in the Code element.

  5. Add a Type element as a child of the Object element The text value of the Default element specifies the type of the object.

  6. Add a Default element as a child of the Object element. The text value of the Default element specifies the default value of the object when you insert the code snippet.

  7. Optionally, add the Function and/or ToolTip elements.

Now that you have created literals and objects, you need a way to use them in the code that will be inserted by the code snippet. You reference the literals and objects you have declared in the Declarations element by placing $ symbols at the beginning and end of the value in the literal or object's ID element

To reference a literal or object in a Code element

  • Place $ symbols at the beginning and end of the literal or object's ID element value. For example, if a literal has an ID element that contains the value MyID, you would reference that literal in the Code element with $MyID$.

The following code example shows a code snippet with both the Literal and Object elements. The SqlConnString literal is referenced in the Code element with $SqlConnString$, and the SqlConnection object is referenced with $SqlConnection$.

<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/CodeSnippet">
    <CodeSnippet>
        <Header>

            <!-- Add Header information here -->

        </Header>
        <Snippet>

            <!-- Add additional Snippet information here -->

            <Declarations>
                <Literal>
                    <ID>SqlConnString</ID>
                    <ToolTip>Replace with a SQL connection string.</ToolTip>
                    <Default>"SQL connection string"</Default>
                </Literal>
                <Object>
                    <ID>SqlConnection</ID>
                    <Type>System.Data.SqlClient.SqlConnection</Type>
                    <ToolTip>Replace with a connection object in your application.</ToolTip>
                    <Default>dcConnection</Default>
                </Object>
            </Declarations>
            <Code Language="CSharp">
                <![CDATA[
                    daCustomers = new SqlClient.SqlDataAdapter();
                    selectCommand = new SqlClient.SqlCommand($SqlConnString$);
                    daCustomers.SelectCommand = selectCommand;
                    daCustomers.SelectCommand.Connection = $SqlConnection$;
                ]]>
            </Code>
        </Snippet>
    </CodeSnippet>
</CodeSnippets>
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.