开发小技巧2——代码段

  概念:
  代码段是将预先定义好的可重用代码块快速插入到代码文件中,代码段提高了开发效率,增强了代码的可重用性;既节约了时间,又实现了不同开发人员间代码的共享。同时也可保证同一项目中代码风格的统一。
      Visual Studio中已经定义了部分代码段,例如:在visual studio中输入for按tab健即可自动生成for循环语句,输入tryf按tab则自动生成try catch语句。
      在Visual Studio 2012中创建自定义代码段:
选中项目文件,右击添加-新建项-选择XML文件,这个时候给XML文件起一个名字,同时把后面的.xml后缀名修改成. Snippet。如图:
 
  默认生成效果:
<CodeSnippet Format="1.0.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <Header>
    <Title>标题</Title>
    <Author>作者</Author>
    <Shortcut>快捷方式</Shortcut>
    <Description>说明</Description>
    <SnippetTypes>
      <SnippetType>SurroundsWith</SnippetType>
      <SnippetType>Expansion</SnippetType>
    </SnippetTypes>
  </Header>
  <Snippet>
    <Declarations>
      <Literal>
        <ID>名称</ID>
        <Default></Default>
      </Literal>
    </Declarations>
    <Code Language="XML">
      <![CDATA[<test>
      <name>$名称$</name>
      $selected$ $end$</test>]]>
    </Code>
  </Snippet>
</CodeSnippet>
 节点说明如下:
 
<Header>子元素
定义
<Title>
显示标题
<Shortcut>

为代码段定义的快捷方式。

在IDE中,输入快捷方式名称然后通过tab键选择下面的代码段,如果你输入部分快捷方式

名称(例如“cla”而不是“class”),你将需要按两次tab键;一次完成名称扩展,另外

一次插入代码段

<Description>
关于代码段的描述信息
<SnippetType> 

指定代码段所属的类别(扩展,围绕,或重构)。注意,一个代码段可能属于多个组。

微软IDE根据这个值决定使用哪个显示代码段的上下文菜单

  
  Literal节点包括如下子节点 :
<Literal>的子节点
定义节点
<ID>
变量名称,生成后用于统一替换代码段中的内容
<ToolTip>
鼠标移动到上面的提示信息
<Default>
变量的默认值
  自定义WPF中的依赖属性代码段:
<CodeSnippet Format="1.0.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <Header>
    <Title>MySnippet</Title>
    <Author>infly</Author>
    <Shortcut>dprop</Shortcut>
    <Description>自动生成依赖属性</Description>
    <SnippetTypes>
      <SnippetType>SurroundsWith</SnippetType>
      <SnippetType>Expansion</SnippetType>
      <SnippetType>Refactoring</SnippetType>
    </SnippetTypes>
  </Header>
  <Snippet>
    <Declarations>
      <Literal>
        <ID>PropertyName</ID>
        <Default>propertyName</Default>
        <ToolTip>Replace with property name.</ToolTip>
      </Literal>
      <Literal>
        <ID>PropertyType</ID>
        <Default>propertyType</Default>
        <ToolTip>Replace with property type.</ToolTip>
      </Literal>
      <Literal>
        <ID>ParentType</ID>
        <Default>parentType</Default>
        <ToolTip>Replace with property's parent type.</ToolTip>
      </Literal>
    </Declarations>
    <Code Language="CSharp">
      <![CDATA[
      #region $PropertyName$
      public static readonly DependencyProperty $PropertyName$Property =
            DependencyProperty.Register("$PropertyName$", typeof ($PropertyType$), typeof ($ParentType$), new PropertyMetadata(
                (sender, e) =>
                {
                    
                }));
        public $PropertyType$ $PropertyName$
        {
            get { return ($PropertyType$) GetValue($PropertyName$Property); }
            set { SetValue($PropertyName$Property, value); }
        }
      #endregion
      ]]>
    </Code>
  </Snippet>
</CodeSnippet>
  将代码段添加到Visual Studio中 
      两种方式:
 最简单的直接把文件复制到<drive>:Program Files (x86)\Microsoft Visual Studio 11.0\VC#\Snippets\2052\Visual C#下;
     第二种:点击工具=>代码段管理器=>导入=>找到代码段文件点击打开,勾选Visual C#选项点击完成。
添加完成之后输入dprop按tab键或按Ctrl+K,Ctrl+X找到自定义代码段,自动生成如下代码
posted @ 2014-06-18 10:12  Infly  阅读(389)  评论(0编辑  收藏  举报