VS自定义代码块Code Snippet

一  、简述

  我们在开发当中,避免不了一些重复的开发工作,在你漫长的开发以及学习当中,你会发现有这么一部分代码是你时常会使用到的。我想这个工具也是针对这个原因出来的吧,它就是预先把你需要的这部分代码的主干部分给它提练出来,然后你只要修改局部的某些部分内容,从而完成你代码的编辑工作。这样的好处,就是当你使用一个快捷键的方式,就可以把你这部分常用的代码直接插入到你需要的代码文件当中。而不需要你由头到尾地重复一些额外的工作,缩短你的开发时间,提高你的工作效率。这就是今天要说到的Code Snippet

二 、Code Snippet介绍

  一个 CodeSnippet 则主要包含

两部分。一个 元素可以包含多个不同的 。其中
部分主要是对这个 Snippet 的一个声明,包括 Snippet 的名称、描述、作者及 Snippet 的类型。

1.Header

  表示此代码段标题</p> <p>  <Shortcut>设置快捷键</p> <p>  <Description>对代码段的描述</p> <p>  <SnippetTypes>可以包含多个<SnippetType>其取值有三种Expansion、SurroundsWith、Refactoring 。Expansion允许代码插入在光标处;SurroundsWith允许代码围绕在选中代码两边;Refactoring指定了C#重构过程中所使用的Snippet,在自定义Snippet中不能使用。如果该值不做设置,则Snippet可以放在任何地方。</p> <p><Snippet>节点是实现代码管理的地方,其包含四个子节点<Code><Declarations><Imports><References></p> <h2>2.Snippet</h2> <p><span style="color:#339966;"><Code></span></p> <p>包含<![CDATA[]]>中,放置模版代码,此节点设置Language(C# VB XML),Kind(类型:如方法体,方法声明),Delimiter(分隔符,默认值是$)</p> <p> </p> <p>private $type$ $field$;</p> <p> public $type$ $property$<br> {<br> get { return $field$;}<br> set { $field$ = value;}<br> }</p> <p> </p> <p>为定义的模板代码,type,field,property为定义的变量,变量在Declarations的Literal中声明。</p> <p>$end$为当按enter键后光标的默认位置</p> <p> </p> <p><span style="color:#339966;"><Declarations></span></p> <p>包含多个<Literal>和<Object>节点,<Literal>用于设定变量值<Object>用于声明模版对象。</p> <p>这里只说明Literal</p> <p>ID 默认属性名称</p> <p>ToolTip 属性说明</p> <p>Default 默认类型</p> <p><span style="color:#339966;"><Imports></span></p> <p>引入命名空间,只支持vb .  - -#.</p> <p><span style="color:#339966;"><References></span></p> <p>添加程序集引用,只支持vb .  - -#.</p> <p> </p> <p> </p> <p> </p> <h1><span style="color:#0000ff;">三 、Code Snippet简单使用</span></h1> <p>  首先可以在      工具  >>  代码片段管理器    中找到系统定义的snippet代码片段。如for,if等,可以看到对应语言和存储位置。</p> <p><a href="http://img.e-com-net.com/image/info8/d7367c15a43a449d8a14e686cbd71ed9.jpg" target="_blank"><img style="margin-left:auto;;border:1px solid black;" src="http://img.e-com-net.com/image/info8/d7367c15a43a449d8a14e686cbd71ed9.jpg" alt="VS自定义代码块Code Snippet_第1张图片" width="650" height="502"></a></p> <p>下面以propfull自动属性为例讲解:</p> <p>创建文件propfull.snippet,实质为xml文件</p> <div class="cnblogs_code"> <pre><?xml version=<span style="color:#800000;">"</span><span style="color:#800000;">1.0</span><span style="color:#800000;">"</span> encoding=<span style="color:#800000;">"</span><span style="color:#800000;">utf-8</span><span style="color:#800000;">"</span>?> <CodeSnippets xmlns=<span style="color:#800000;">"</span><span style="color:#800000;">http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet</span><span style="color:#800000;">"</span>> <CodeSnippet Format=<span style="color:#800000;">"</span><span style="color:#800000;">1.0.0</span><span style="color:#800000;">"</span>> <Header> <Title>propfull propfull 属性和支持字段的代码片段 Microsoft Corporation Expansion

type 属性类型 int property 属性名 MyProperty field 支持此属性的变量 myVar "csharp">private $type$ $field$; public $type$ $property$ { get { return $field$;} set { $field$ = value;} } $end$]]>

 

定义好放在C#对于路径下,然后就可以在VS中敲入propfull,就会实现以下输出

        private int myVar;

        public int MyProperty
        {
            get { return myVar; }
            set { myVar = value; }
        }

 

转载于:https://www.cnblogs.com/xieyang07/p/10258195.html

你可能感兴趣的:(c#)