1.代码片段的使用示例

在编写代码中常会使用代码片段来提高我们的编写代码的效率,如:在Visual Studio中编写一个

  1. for(int i = 0; i < length;i++)
  2. {
  3. }

这样的代码,我们只需要写 for 然后紧接着按2下”Tab键”即可实现上面的代码片段,如果需要编写一个

  1. private int myVar;
  2. public int MyProperty
  3. {
  4. get { return myVar; }
  5. set { myVar = value; }
  6. }

我们只需要写 propfull 然后紧接着按2下“Tab键”即可实现上面所示的代码片段。

可谓是非常的方便啊,提高了我们的工作效率。那么如何来自定义一个我们自己的代码片段呢?

2.创建自己的代码片段

在Visual Studio中依次点击:工具 >> 代码片段管理器
在代码管理器中的“语言”我们这里选择Visual C#(当然你也可以根据自己需求选择其他的语言),然后选择Visual C#文件夹,如下图所示:

到了这里就比较好办了,拷贝位置:C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC#\Snippets\2052\Visual C# 在电脑中打开该路径可以拷贝一份出来,然后将拷贝出来的文件用VS打开进行修改,然后丢在该目录中重启你的Visual Studio即可。

如拷贝propfull.snippet 文件进行修改,我文件名修改为 propn.snippet ,内容修改后如下:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  3. <CodeSnippet Format="1.0.0">
  4. <Header>
  5. <Title>propn</Title>
  6. <Shortcut>propn</Shortcut>
  7. <Description>MVVM自动通知属性和支持字段的代码段</Description>
  8. <Author>Andrew</Author>
  9. <SnippetTypes>
  10. <SnippetType>Expansion</SnippetType>
  11. </SnippetTypes>
  12. </Header>
  13. <Snippet>
  14. <Declarations>
  15. <Literal>
  16. <ID>type</ID>
  17. <ToolTip>属性类型</ToolTip>
  18. <Default>int</Default>
  19. </Literal>
  20. <Literal>
  21. <ID>property</ID>
  22. <ToolTip>属性名</ToolTip>
  23. <Default>MyProperty</Default>
  24. </Literal>
  25. <Literal>
  26. <ID>field</ID>
  27. <ToolTip>支持此属性的变量</ToolTip>
  28. <Default>myVar</Default>
  29. </Literal>
  30. </Declarations>
  31. <Code Language="csharp">
  32. <![CDATA[private $type$ $field$;
  33. public $type$ $property$
  34. {
  35. get { return $field$;}
  36. set
  37. {
  38. $field$ = value;
  39. this.RaisePropertyChanged("$property$");
  40. }
  41. }
  42. $end$]]>
  43. </Code>
  44. </Snippet>
  45. </CodeSnippet>
  46. </CodeSnippets>

说明:其实不要看着上面的XML有这么多,其实非常非常简单,依葫芦画瓢的事情,稍微看一下用不了2分钟就画出这个”瓢”啦!

大功告成,重启VS 输入“propn” 然后按2次Tab键 弹出如下代码

  1. private int myVar;
  2. public int MyProperty
  3. {
  4. get { return myVar; }
  5. set
  6. {
  7. myVar = value;
  8. this.RaisePropertyChanged("MyProperty");
  9. }
  10. }

学会了这些VS中的神技,是不是事半功倍?嘿嘿嘿.
其实也有其他的插件可以对这些进行支持,不过我个人是不怎么喜欢插件的,请允许我保持这个自己的权利吧!

转载请注明:王旭博客 » Visual Studio使用技巧,创建自己的代码片段

Visual Studio使用技巧,创建自己的代码片段的更多相关文章

  1. 【转载】在 Visual Studio 2012 中创建 ASP.Net Web Service

    在 Visual Studio 2012 中创建 ASP.Net Web Service,步骤非常简单.如下: 第一步:创建一个“ASP.Net Empty Web Application”项目 创建 ...

  2. Visual Studio 2010中创建ASP.Net Web Service

    转自:http://blog.csdn.net/xinyaping/article/details/7331375 很多人在论坛里说,在Visual Studio 2010中不能创建“ASP.Net ...

  3. 在 Visual Studio 2010 中创建 ASP.Net Web Service

    第一步:创建一个“ASP.Net Empty Web Application”项目 第二步:在项目中添加“Web Service”新项目 第一步之后,Visual Studio 2010会创建一个仅含 ...

  4. (转)在 Visual Studio 2010 中创建 ASP.Net Web Service

    很多人在论坛里说,在Visual Studio 2010中不能创建“ASP.Net Web Service”这种project了,下面跟帖者云云,有的说这是因为微软已经将Web Service整合进W ...

  5. 在 Visual Studio 2010 中创建 SharePoint 2010 事件接收器

    Microsoft Visual Studio 2010 提供了一个可用于生成事件接收器的项目类型,事件接收器会在 Microsoft SharePoint 2010 网站上选择事件之前或之后执行操作 ...

  6. Visual Studio中使用Macros插件给代码添加注释、时间和以及自动脚本

    title: Visual Studio中使用Macros插件给代码添加注释.时间和以及自动脚本 date: 2020-09-11 sidebarDepth: 2 tags: 代码 Visual st ...

  7. Visual Studio Entity Framework (EF) 生成SQL 代码 性能查询

    Visual Studio Entity Framework (EF) 生成SQL 代码 性能查询     SQL 中,有SQL Server Profiler可以用来查询性能以及查看外部调用的SQL ...

  8. 在 Visual Studio 2013 中创建 ASP.NET Web 项目(0):专题导航 [持续更新中]

    写在前面的话 随着 Visual Studio 2013 的正式推出,ASP.NET 和 Visual Studio Web 开发工具 也发布了各自的最新版本. 新版本在构建 One ASP.NET ...

  9. 在 Visual Studio 2013 中创建 ASP.NET Web 项目(1):概述 - 创建 Web 应用程序项目

    注:本文是“在 Visual Studio 2013 中创建 ASP.NET Web 项目”专题的一部分,详情参见 专题导航 . 预备知识 本专题适用于 Visual Studio 2013 及以上版 ...

随机推荐

  1. Spark的基本说明

    1.关于Application 用户程序,一个Application由一个在Driver运行的功能代码和多个Executor上运行的代码组成(工作在不同的节点上). 又分成多个Job,每个Job由多个 ...

  2. div设置contentEditable="true"作为文本编辑器,定位光标解决办法

    function set_focus(el) {    el = el[0]; // jquery 对象转dom对象    el.focus();    if ($.browser.msie) {   ...

  3. mysql data_add data_sub

    DATE_SUB() 函数从日期减去指定的时间间隔. 语法 DATE_SUB(date,INTERVAL expr type) date 参数是合法的日期表达式.expr 参数是您希望添加的时间间隔. ...

  4. win7下wifi密码的保存路径

    win7下wifi保存在C:\ProgramData\Microsoft\Wlansvc\Profiles\Interfaces目录下的配置文件中,xml配置文件 <?xml version=& ...

  5. QT安装在VS2008中的方法

    (一)工欲善其事,必先利其器,废话不多讲. 原文:http://www.cnblogs.com/zwq194/archive/2011/02/19/1958713.html 总结起来网上流行的VS20 ...

  6. 【Unity/Kinect】获取预制的手势信息KinectInterop.HandState

    Kinect使用了枚举KinectInterop.HandState来描述手势. 该手势指的是手掌的状态(张开/握拳),而不是说整个手臂的肢体动作(Gesture). 同样是需要嵌套在Kinect获取 ...

  7. C语言 · 字符串对比

    问题描述 给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下4中情况之一: 1:两个字符串长度不等.比如 Beijing 和 Hebei 2:两个字符串不仅长度相 ...

  8. [sz,rz]使用sz/rz在两台Linux设备之间传输数据

    转自:https://superuser.com/questions/604055/using-rz-and-sz-under-linux-shell zsend #!/bin/sh DEV=/dev ...

  9. kubernetes 阿里云安装(kubeadm方式)

    注意:不能修改hostnamecurl -sSL http://aliacs-k8s.oss-cn-hangzhou.aliyuncs.com/installer/kubemgr-1.6.1.sh & ...

  10. Android Activity动画属性简介

    Android Activity动画属性简介 在Android当中 设置activity的动画 需要复写 android:windowAnimationStyle这个属性 我们自定义一个动画样式来继承 ...