分享10条Visual Studio 2012的开发使用技巧
使用Visual Studio 2012有一段时间了,并不是追赶潮流,而是被逼迫无可奈何。客户要求的ASP.NET MVC 4的项目,要用.NET 4.5来运行。经过一段时间的摸索,得到一点经验和体会。C#之父曾说,抗拒变化是人类的天性。Visual Studio 2012仅仅是在界面上变化就很让人感叹,也只有这样的大公司才有精力和时间去做这样的变更。微软有意推广一项技术,会在他最得意的产品中应用这项新技术,产品和技术路线并行,相辅相成,微软不愁在IT界没有饭吃。
1 添加程序集引用
这个版本的Visual Studio改变了从VS2003一直以来的做法,改成列表形式,以打勾表示被当前程序集引用,不打勾则去除引用。所以,当从GAC或是项目或是文件系统中添加程序集时,只需要它把它找到,并把列表前的勾选中即可。

Visual Studio 2010已经解决了添加GAC中的程序集非常慢的问题,不过手动刷新.NET Framework这个Tab页面里面的内容又比较麻烦,2012在这方面添加了一个搜索框,可以通过搜索而不以列表查看的方式添加引用,有一些改善。
Visual Studio 2010有一个扩展项目Mutex Extension,可用于拷贝和复制项目的引用。遗憾的是Visual Studio 2012仍然没有这个功能,不能对项目中所引用的程序集进行复制和拷贝。
2 解决方案浏览器中预览图片
如下图所示,在解决方案浏览器中指向文件名,可以直接预览该图片,这对Web开发是很有用处的。

当你把鼠标放在文件名上面时,Visual Studio会显示一个图片的缩略图。
Visual Studio默认双击项目中的一个文件,会用Visual Studio设置的编辑器打开。但是我想在资源管理器中打开它,也没有找到右键中的菜单项(Open File in File Explorer),默认在资源管理器中还是只能打开一个文件夹。
3 单击打开选中的项目文件
在Visual Studio中的解决方案管理器,有一项是Preview Selected Items,不选中则只可以双击打开选中的项,选则这一些,则单击之后就会在编辑器中打开编辑。一直以来使用Visual Studio,还是觉得双击打开要好一点。有时候我只是想看一下项目的结构,而不是想打开它进行编辑。

有人指出这一项是多余的功能,比如当我选中多个文件,如何去预览它呢,要全部在Visual Studio里面打开吗?这样就有点不合理了。所以,回到初始的美好经验,不要选中这个按钮。
4 解决方案中集成类型浏览器
Visual Studio的类型浏览器一直以来都没有什么很大的用处。如果我要找一个类型,会直接用搜索,而不是去类型浏览器中查找。这一次的Visual Studio直接把类型浏览器集成到解决方案管理器中,可以看到一个文件定义的类型和方法,方便了很多。

5 打开光标所在的窗口 CTRL + ALT + HOME
这一条特性比较有用。当我在编辑一段代码时,需要参考其它的代码,在解决方案浏览器中浏览,打开,看到我所需要的代码之后,要回到最开始我正在编辑的代码,请点击CTRL + ALT + HOME,Visual Studio为你打开光标所在的窗口。
6 快速启动 Quick Launch

这是个搜索功能项的特性,它可节省你找功能的时间,现在可以直接在这里搜索,查找菜单项,也可以查找配置项。比如我输入Format,它显示如下,点击相应的项,直接打开配置菜单的子项目,很实用的功能。

7 多个解决方案浏览器窗口
如果一个项目中有很多文件,在一个解决方案浏览器中查看比较吃力,可以选择该文件项,点右键选中”New Solution Explorer View” 菜单,它会在新的解决方案浏览器中打开查看。

是不是方便很多呢?
8 改善的搜索窗口
您可以在解决方案浏览器的按钮下面,输入要搜索的单词,解决方案浏览器会为您过滤它的项,显示与输入的单词相匹配的项目。这个版本的Visual Studio在解决方案浏览器的功能上改进不少。

其它的窗口,比如控件工具箱,也可以用于搜索控件名称。

错误列表窗口,也可以搜索

9 Tab选项卡固定
如果项目打开了很多文件,新打开的文件项,会隐藏已经打开的文件项。如果这样,你可以到Tab下拉列表中去找需要的选项卡,也可以通过解决方案浏览器,再次双击打开该项。现在你还有一种选择,打开一个Tab选项卡之后,点一下它的钉子图标,把它固定住,这样,即使Visual Studio打开很多选项卡,也会保持这个选项卡可见。

虽然快捷键Ctrl+Shift+Tab可以在多个打开的选项卡中切换,但是打开的选项卡很多的话,还是把它固定住好用一些。
10 自动代码生成的改善
比如要为按钮生成点击事件,输入以下的代码,Tab表示要按下Tab键
btnOK.Click+=TAB + TAB
Visual Studio 2010会为你生成标准的事件注册方法,下面是Visual Studio 2010的生成的方法
btnOK.Click +=new EventHandler(btnOK_Click); void btnOK_Click(object sender, EventArgs e)
{
throw new NotImplementedException();
}
同样的情况,来看一下Visual Studio 2012为你生成的代码:
btnOK.Click +=btnOK_Click; void btnOK_Click(object sender, EventArgs e)
{
throw new NotImplementedException();
}
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
对比一下,Visual Studio 2012生成的代码要简洁一些。
分享10条Visual Studio 2012的开发使用技巧的更多相关文章
- Visual Studio 2012的开发使用技巧
分享10条Visual Studio 2012的开发使用技巧 使用Visual Studio 2012有一段时间了,并不是追赶潮流,而是被逼迫无可奈何.客户要求的ASP.NET MVC 4的项目,要用 ...
- Visual Studio 2012 应用软件开发新方式
微软正式发布Visual Studio 2012 应用软件开发新方式 2012-09-13 09:54 51CTO.com 我要评论(0) 字号:T | T “现在,开发者将有更好的机会开发与云服务连 ...
- 在Visual Studio 2012中使用VMSDK开发领域特定语言(二)
本文为<在Visual Studio 2012中使用VMSDK开发领域特定语言>专题文章的第二部分,在这部分内容中,将以实际应用为例,介绍开发DSL的主要步骤,包括设计.定制.调试.发布以 ...
- 在Visual Studio 2012中使用VMSDK开发领域特定语言(一)
前言 本专题主要介绍在Visual Studio 2012中使用Visualization & Modeling SDK进行领域特定语言(DSL)的开发,包括两个部分的内容.在第一部分中,将对 ...
- Visual Studio 2012下Box2D开发环境设置
Cocos2d-x 3.x默认情况下采用的物理引擎是Chipmunk,如果我们要使用Box2D引擎,需要进行一些设置和调整,而且不同的开发平台下这些设置也有所不同.由于本书在此之前介绍的都是基于微软的 ...
- 在Visual Studio 2012中使用VMSDK开发领域特定语言1
在Visual Studio 2012中使用VMSDK开发领域特定语言(一) 前言 本专题主要介绍在Visual Studio 2012中使用Visualization & Modelin ...
- 用Visual Studio 2012+Xamarin搭建C#开发Andriod的环境
第一步:安装Visual Studio: Visual Studio 2012(或者Visual Studio 2010),原因是目前为止Xamarin for Visual Studio的插件只支持 ...
- 使用Visual Studio 2012 开发 Html5 应用
Visual Studio 一直以来是开发微软旗下应用的利器,只要是开发微软相关的应用无论是Windows程序,WPF,Asp.Net,WinRT Surface,WindowsPhone 等微软旗下 ...
- 10个Visual Studio原生开发调试技巧
10个Visual Studio原生开发调试技巧(1) 2013-05-29 13:30 佚名 开源中国 我要评论(1) 字号:T | T 以下的列表中你可以看到写原生开发的调试技巧(接着以前的文章来 ...
随机推荐
- 最新Ubuntu10.10 更新源
Ubuntu10.10这个版本真的很老了,官方N多年前早已不再支持更新软件源了. 目前可用的有中科大镜像更新源. 中科大Ubuntu 10.10源列表: deb http://mirrors.ustc ...
- 《TCP/IP高效编程:改善网络程序的44个技巧》源码在Linux上的编译
为了先完整编译通过,需要以下几个步骤: 1.进入linux子目录,执行 make.(此步骤为打补丁.) 2.返回上一级目录,打开文件 simplec.c,添加头文件 #include <stdi ...
- 使用Fragment的两种方式:<fragment>与<FrameLayout>
Android中使用Fragment的两种方式:<fragment>与<FrameLayout> 1.静态使用:自定义类,继承Fragment,在xml中使用<fragm ...
- Android APK 签名 (转发)
Cordova 3.5 为 Android APK 签名,生成可发布的 APK 程序文件 任侠 2014-06-07 00:04 移动开发 抢沙发 16,288 views 目录 [隐藏] ...
- 一用钟情的VS插件系列总目录(值得收藏)
关于插件,大家的印象可能很多,比如开发者经常使用的Chrome浏览器的扩展程序,某个软件的一个扩展程序等等.我们使用插件的目的是为了提高我们的某些方面的工作效率或者让我们的软件源(Chrome浏览器等 ...
- Java语法糖2:自动装箱和自动拆箱
前言 一开始想学学自动拆箱和自动装箱是被这个名字吸引到,听上去好像很高端的样子,其实自动拆箱.自动装箱是很简单的内容. 自动拆箱和自动装箱 Java为每种基本数据类型都提供了对应的包装器类型.举个例子 ...
- ASP.NET MVC请求处理管道生命周期的19个关键环节(1-6)
ASP.NET和ASP.NET MVC的HttpApplication请求处理管道有共同的部分和不同之处,本系列将体验ASP.NET MVC请求处理管道生命周期的19个关键环节. ①以IIS6.0为例 ...
- 我的第一篇Markdown语法博客
这是我的第一篇使用markdown语法编写的博客 使用的编辑器为Sublime Text2 并且使用了sublog插件, sublog是一个开源项目 sublog 并且参考了作者的博客 AmongOt ...
- 一个简单的通用Makefile实现
一个简单的通用Makefile实现 Makefile是Linux下程序开发的自动化编译工具,一个好的Makefile应该准确的识别编译目标与源文件的依赖关系,并且有着高效的编译效率,即每次重新ma ...
- 谈谈对BPM的理解
BPM的产生缘由 近年来,随着计算机技术的发展和互联网时代的到来,我们已经进入了信息时代,也称为数字化时代,在这数字化的时代里,企业的经营管理都受到了极大的挑战.从上世纪90年代起至今,企业的信息化工 ...