Code snippets for methods in Visual Studio

Visual StudioCode Snippets

Visual Studio Problem Overview


In Visual Studio I can type e.g.

> for TAB TAB

and a code snippet pops in.

Are there built-in code snippets for private, public, etc. methods as well?

Visual Studio Solutions


Solution 1 - Visual Studio

ctor: Default constructor

prop: Property

propg: Read-only property

sim: static int main method

svm: static void main method

There's a good list here. And if you want to make your own, the Snippet Designer is very good.

Here are all the Visual C# code snippets for Visual Studio 2017

Solution 2 - Visual Studio

You can download the method snippets as a Visual Studio Extension.

It supports the following:

method (typical method)

vmethod (virtual method)

smethod (static method)

xmethod (extension method)
  1. In Visual Studio, go to menu ToolsExtensions and Updates...

  2. Observe the Extensions and Updates window

  3. Enter "C# Methods Code Snippets" in the search field (upper right)

Solution 3 - Visual Studio

If you want to see the list of all available snippets:

  • Press Ctrl + K and then Ctrl + X

Solution 4 - Visual Studio

Below are the steps I used to create a custom snippet for Visual Studio 2010, but the steps work for Visual Studio 2008.

Create a new text file named method.snippet and paste the following:

<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets  xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
    <CodeSnippet Format="1.0.0">
        <Header>
            <Title>method</Title>
            <Shortcut>method</Shortcut>
            <Description>Code snippet for method</Description>
            <Author>Kevin Hogg</Author>
            <SnippetTypes>
                <SnippetType>Expansion</SnippetType>
            </SnippetTypes>
        </Header>
        <Snippet>
            <Declarations>
                <Literal>
                    <ID>methodname</ID>
                    <ToolTip>Method name</ToolTip>
                    <Function>MethodName()</Function>
                    <Default>MethodNamePlaceholder</Default>
                </Literal>
            </Declarations>
            <Code Language="csharp"><![CDATA[public void $methodname$ ()
    {
        $end$
    }]]>
            </Code>
        </Snippet>
    </CodeSnippet>
</CodeSnippets>

Copy your file into the snippets folder in Windows Explorer:

  • Visual Studio 2010: C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC#\Snippets\1033\Visual C#
  • Visual Studio 2008: C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC#\Snippets\1033\Visual C#

Once you save your file, the snippets are automatically loaded, so you can now open Visual Studio and type:

method<tab><tab>

*where <tab> is the Tab key on your keyboard.

You should now see the following created, with the MethodNamePlaceholder highlighted so you can change the name.

public void MethodNamePlaceholder()
{

}

Solution 5 - Visual Studio

Some of the snippets I use, also mentioned at MSDN, follows:

> 1. '#if Creates a #if directive and a #endif directive. > 2. '#region Creates a #region directive and a #endregion directive. > 3. ~ Creates a destructor for the containing class. > 4. attribute Creates a declaration for a class that derives from Attribute. > 5. checked Creates a checked block. > 6. class Creates a class declaration. > 7. ctor Creates a constructor for the containing class. > 8. cw Creates a call to WriteLine. > 9. do Creates a do while loop. > 10. else Creates an else block. > 11. enum Creates an enum declaration. > 12. equals Creates a method declaration that overrides the Equals method defined in the Object class. > 13. exception Creates a declaration for a class that derives from an exception (Exception by default). > 14. for Creates a for loop. > 15. foreach Creates a foreach loop. > 16. forr Creates a for loop that decrements the loop variable after each iteration. > 17. if Creates an if block. > 18. indexer Creates an indexer declaration. > 19. interface Creates an interface declaration. > 20. invoke Creates a block that safely invokes an event. > 21. iterator Creates an iterator. > 22. iterindex Creates a "named" iterator and indexer pair by using a nested class. > 23. lock Creates a lock block. > 24. mbox Creates a call to MessageBox.Show. You may have to add a reference to System.Windows.Forms.dll. > 25. namespace Creates a namespace declaration. > 26. prop Creates an auto-implemented property declaration. > 27. propfull Creates a property declaration with get and set accessors. > 28. propg Creates a read-only auto-implemented property with a private "set" accessor. > 29. sim Creates a static int Main method declaration. > 30. struct Creates a struct declaration. > 31. svm Creates a static void Main method declaration. > 32. switch Creates a switch block. > 33. try Creates a try-catch block. > 34. tryf Creates a try-finally block. > 35. unchecked Creates an unchecked block. > 36. unsafe Creates an unsafe block. > 37. using Creates a using directive. > 38. while Creates a while loop.

Solution 6 - Visual Studio

I made my own snippet for a method. The XML code for it is the following, and you can add it to a file called "my_method.snippet" (or whatever_you_want.snippet) in C:\Users\YOUR_USERNAME\Documents\Visual Studio 2012\Code Snippets\Visual C#\My Code Snippets (your path might be different because I use VS2012):

<CodeSnippet Format="1.0.0">
    <Header>
        <Title>method</Title>
        <Shortcut>method</Shortcut>
        <SnippetTypes>
            <SnippetType>Expansion</SnippetType>
        </SnippetTypes>
    </Header>
    <Snippet>
        <Declarations>
            <Literal>
                <ID>access_modifier</ID>
                <Default>private</Default>
            </Literal>
            <Literal>
                <ID>return_type</ID>
                <Default>void</Default>
            </Literal>
            <Literal>
                <ID>name</ID>
                <Default>New_method</Default>
            </Literal>
        </Declarations>
        <Code Language="csharp">
            <![CDATA[$access_modifier$ $return_type$ $name$ ()
    {
	$end$
    }]]>
        </Code>
    </Snippet>
</CodeSnippet>

Solution 7 - Visual Studio

You can create customs snippets. Like this:

http://www.mediafire.com/file/gz3tzjnydk5/meth.snippet

Solution 8 - Visual Studio

The code snippet for properties is:

> propTABTAB

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionEdward TanguayView Question on Stackoverflow
Solution 1 - Visual StudioCameron MacFarlandView Answer on Stackoverflow
Solution 2 - Visual StudioScott NimrodView Answer on Stackoverflow
Solution 3 - Visual StudioANewGuyInTownView Answer on Stackoverflow
Solution 4 - Visual StudioKevin HoggView Answer on Stackoverflow
Solution 5 - Visual StudioUJSView Answer on Stackoverflow
Solution 6 - Visual Studiodaniel1426View Answer on Stackoverflow
Solution 7 - Visual StudioEdgarTView Answer on Stackoverflow
Solution 8 - Visual StudioSorazView Answer on Stackoverflow