如何利用 Visual Studio 自带工具提高开发效率
Visual Stuido 是一款强大的Windows 平台集成开发工具,你是否好好地利用了它呢?
显示行号
有些时候(比如错误定位)的时候,显示行号将有利于我们进行快速定位。
如何显示
1. 工具 / 选项 / 文本编辑器 -> 选择对应的语言
2. 勾选 “行号”


避免剪切或复制空白行
有些时候当我们复制了一行数据正打算粘贴到一个空白行的时候,手一抖,V变成了C,结果复制了一条空白行。这会让人很郁闷,当然你可以通过使用 Ctrl + Shift + V 从剪切版中找到之前复制的那一项,但是毕竟这很麻烦。
要避免这种事情发生,你可以通过 Tools / Options / Text Editor / All-languages,然后不要勾选 “Apply Cut or Copy commands to blank lines when there is no selection.” 前面的复选框,就行了。

如果安装了 Productivity Power Tools,并且开启了 Html Copy 这项功能,就会导致上述的设置失效。
使用书签
和平常意义的书签类似,当我们希望在日后某一时刻快速定位到一处代码时使用。比如在项目例会上,你需要演示本周你所做的一些改进,在开会前可以事先在需要演示的几个地方加上书签,这样会议中就可以快速定位到这几处代码,而不需要一个个文件查找。
创建、删除书签 Ctrl + K, Ctrl + K

移动到下一个书签 Ctrl + K, Ctrl + N(ext)
移动到上一个书签 Ctrl + K, Ctrl + P(revious)

动画演示:如何使用书签
当需要定位到某个书签的时候,可以在任意位置使用以上快捷键进行查找,或者通过书签窗口来进行管理。


快速插入已有的代码
在开发了多个项目后,我们可能会积累了一些常用的代码块,这个时候可以将该代码保存到一个位置,这样之后就可以直接使用,而不需要再手工输入。实现这种快速插入代码有两种方式:工具箱、文件。两种方式均可以在不同的Visual Studio实例中使用。
借助工具箱
只需要将可能会重用的代码拖动到工具箱中,就可以在当前 Visual studio 中各个项目中使用。也可以在其它新打开的 Visual Studio 实例中使用。使用的时候将工具箱中的代码拖动到打算放置的位置即可。

动画演示:如何使用工具箱来插入代码
借助文件
先将代码段保存到单独的文件,例如reusable.cs。然后选择 编辑 / 将文件作为文本插入。

使用任务注释跟踪任务
在开发一个大型项目的时候,会有多个迭代周期,不同的迭代周期实现不同的功能。因此在某个迭代周期中的代码,很有可能会看到许多 //TODO、//FIXME 这类的注释。当我们进入下一个迭代的时候,如何快速找到这些特殊的标签并对相关代码进行处理呢? 使用查找? 你OUT了!
使用任务注释
在需要下一个迭代完成的代码上添加 //TODO (大小写无关)。具体格式:// + 任务注释 + : + 注释描述,如下图所示。

管理任务
打开 视图 / 任务列表 就可以查看所有现有的任务。双击某一项任务,就可以快速定位到该任务所在的代码块。


增加自定义任务注释
Visual Studio 提供了我们一个 “任务列表” 来实现此类注释的管理。

使用宏来完成一些烦琐的代码 [不再支持]
在 Visual Studio 2012 之前的版本,当有些效果我们经常会使用但又无法单纯的用一个快捷命令来实现时,就可以通过宏来创建自己的快捷命令。但是 Microsoft 再考虑到自定义宏的维护成本过高而且只支持VB,因此抛弃了对它的支持。
下面的演示只限于 Visual Studio 2012 之前的版本。
通过录制宏来实现一个最简单的功能
1. 打开 工具 / 宏 / 录制宏


2. 在代码编辑器中输入
Console.WriteLine("Hi");
3. 点击停止录制宏
打开 工具 / 宏 / 宏资源管理器,找到 RecordingModule 并展开,双击 TemporaryMacro。这个时候会发现编辑器光标所在的位置已经自动插入了一条 “Console.WriteLine("Hi")” 代码。



动画演示:如何创建一个最简单的宏
本节只演示宏的基本功能,更多关于宏的高级用法,请见《Visual Studio 宏的高级用法》。
注:2014年2月之后,Windows的一次更新将导致 Visual Studio 无法运行 macro,按照该文章的方法修改三个配置文件即可以修复。
自定义工具栏
我们可以通过自定义工具栏的方式把我们想要的功能给放转到工具栏区域。比如当我们自定义了宏后,如何才能以最便捷的方式使用呢? 每次都要通过 Macro Explorer 太麻烦了!
1. 打开 工具 / 自定义 ,新建一个工具栏


2. 切换到 Commands 选项卡,选择 Toolbar,并且在下拉框中选择我们刚创建的 “MyToolBar”。

3. 选择 Add Command...
在跳出来的对话框中选择我们刚创建的宏。

因为默认的名称太长,不够直观,所以我们修改下名称。


4. 添加快捷键
点击 “Keyboard...” 会跳出如下图所示界面,在 Show commands containing 输入框中输入关键字,找到我们创建的宏。然后在下方的 Press shortcut keys 中输入我们想要的快捷键。

5. 大功告成
一切准备工作都做好后,我们首先可以在工具栏中看见我们自己的工具栏。这样以后如果想使用就可以简单的单击来实现同样的功能了。当然,也可以利用我们自定义的快捷键来实现。

本文来源于 《如何利用 Visual Studio 自带工具提高开发效率》
如何利用 Visual Studio 自带工具提高开发效率的更多相关文章
- Eclipse 安装Hibernate Tools 工具 提高开发效率
1.打开Eclipse 开发工具 2.配置使用hibernate Tools 3.选择search 选项卡,搜索 hibernate 关键字 点击Install Next finish ...
- 利用Vistual Studio自带的xsd.exe工具,根据XML自动生成XSD
利用Vistual Studio自带的xsd.exe工具,根据XML自动生成XSD 1, 命令提示符-->找到vs自带的xsd.exe工具所在的文件夹 例如: C:\Program Files ...
- 如何利用 Visual Studio 自定义项目或工程模板
在开发项目的时候,由其是商业性质的大型项目时,往往需要在每个代码文件上都加上一段关于版权.开发人员的信息,并且名称空间上都需要带有公司的标志.这个时候,是选择在开发的时候手动添加还是自动生成呢? 我们 ...
- 如何利用 Visual Studio 自定义项目或工程模板(转载)
在开发项目的时候,由其是商业性质的大型项目时,往往需要在每个代码文件上都加上一段关于版权.开发人员的信息,并且名称空间上都需要带有公司的标志.这个时候,是选择在开发的时候手动添加还是自动生成呢? 我们 ...
- Visual Studio 2015速递(2)——提升效率和质量(VS2015核心竞争力)
系列文章 Visual Studio 2015速递(1)——C#6.0新特性怎么用 Visual Studio 2015速递(2)——提升效率和质量(VS2015核心竞争力) Visual Studi ...
- 用Visual Studio 2012+Xamarin搭建C#开发Andriod的环境
第一步:安装Visual Studio: Visual Studio 2012(或者Visual Studio 2010),原因是目前为止Xamarin for Visual Studio的插件只支持 ...
- 在Visual Studio 2012中使用VMSDK开发领域特定语言(二)
本文为<在Visual Studio 2012中使用VMSDK开发领域特定语言>专题文章的第二部分,在这部分内容中,将以实际应用为例,介绍开发DSL的主要步骤,包括设计.定制.调试.发布以 ...
- 在Visual Studio 2012中使用VMSDK开发领域特定语言(一)
前言 本专题主要介绍在Visual Studio 2012中使用Visualization & Modeling SDK进行领域特定语言(DSL)的开发,包括两个部分的内容.在第一部分中,将对 ...
- Visual Studio Code中配置GO开发环境
在Visual Studio Code中配置GO开发环境 一.GO语言安装 详情查看:GO语言下载.安装.配置 二.GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的 ...
随机推荐
- In-Memory:在内存中创建临时表和表变量
在Disk-Base数据库中,由于临时表和表变量的数据存储在tempdb中,如果系统频繁地创建和更新临时表和表变量,大量的IO操作集中在tempdb中,tempdb很可能成为系统性能的瓶颈.在SQL ...
- TODO:小程序开发过程之体验者
TODO:小程序开发过程之体验者 1. 小程序开发过程,先下载开发者并安装开发者工具,现在腾讯开放测试了,普通用户也可以登录开发者工具,如图普通用户登录为调试类型,但是只能建立无AppID的项目 如果 ...
- 探索ASP.NET MVC5系列之~~~2.视图篇(上)---包含XSS防御和异步分部视图的处理
其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...
- Vue-Router 页面正在加载特效
Vue-Router 页面正在加载特效 如果你在使用 Vue.js 和 Vue-Router 开发单页面应用.因为每个页面都是一个 Vue 组件,你需要从服务器端请求数据,然后再让 Vue 引擎来渲染 ...
- 【Web动画】SVG 实现复杂线条动画
在上一篇文章中,我们初步实现了一些利用基本图形就能完成的线条动画: [Web动画]SVG 线条动画入门 当然,事物都是朝着熵增焓减的方向发展的,复杂线条也肯定比有序线条要多. 很多时候,我们无法人工去 ...
- SDWebImage源码解读_之SDWebImageDecoder
第四篇 前言 首先,我们要弄明白一个问题? 为什么要对UIImage进行解码呢?难道不能直接使用吗? 其实不解码也是可以使用的,假如说我们通过imageNamed:来加载image,系统默认会在主线程 ...
- H5项目开发分享——用Canvas合成文字
以前曾用Canvas合成.裁剪.图片等<用H5中的Canvas等技术制作海报>.这次用Canvas来画文字. 下图中"老王考到驾照后"这几个字是画在Canvas上的,与 ...
- MVC还是MVVM?或许VMVC更适合WinForm客户端
最近开始重构一个稍嫌古老的C/S项目,原先采用的技术栈是『WinForm』+『WCF』+『EF』.相对于现在铺天盖地的B/S架构来说,看上去似乎和Win95一样古老,很多新入行的,可能就没有见过经典的 ...
- oracle常用函数及示例
学习oracle也有一段时间了,发现oracle中的函数好多,对于做后台的程序猿来说,大把大把的时间还要学习很多其他的新东西,再把这些函数也都记住是不太现实的,所以总结了一下oracle中的一些常用函 ...
- 烂泥:wiki系统confluence5.6.6安装、中文、破解及迁移
本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb confluence是一个专业的企业知识管理与协同软件,可以用于构建企业wiki.通过它 ...