Vs .Net IDE 实用功能及常用快捷键
1、全屏模式
选择“查看全屏模式”或者按Ctrl-Shift-Enter
来进入全屏模式,再次选择“查看全屏模式
2、类视图
(选择“查看类视图”或者按Ctrl-Shift-C)显示你的解决方案中所有
类与命名空间的继承关系。
3、录制临时宏
选择“工具宏录制临时宏”或者按Ctrl-Shift-R
打开宏浏览器窗口(“查看其它窗口宏浏览器”或Alt-F8)
4、修改多个控件的属性
比如说你放置了一系列文本框,想改掉默认的TextBox1,TextBox2 等属性值。你可以选中所有文本框,将Text 属性设置为一
个空格,然后将它删掉。(必须分成两步来做,因为每个文本框的初始值不同,
Text 属性的值会显示为空字符串。)这样就可以删除掉所有文本框中的默认字
符。
5、链接文件,而不是复制到项目中
每当你为项目加入一个现有文件时,VS.NET 都会自动将该文件物理复制到项目
文件夹中,然后将复制结果加入项目。然而这种结果未必是你想要的。如果只
想链接一个文件,而不进行复制,选择“项目添加现有文件”。选择所需的文
件,不点击“打开”,而点击它旁边的下拉按钮,你会看到“链接文件”的选项
6、设置默认命名空间和程序集名称
选择“项目属性公用属性一般选项”(在2005 中是“项目属性应用
程序”),你可以在根命名空间(VB.NET)或默认命名空间(C#)一栏中设置默
认的命名空间。这个命名空间可以有很多层,而通过对话框添加的新类就会被
放置在这个命名空间下。
7、通过Obsolete 属性生成编译器警告与错误信息
Obsolete 属性在此就可以拿来利
用:
[Obsolete(“使用新的MyMethodEx 来代替!”)]
Public void MyMethod()…
<Obsolete(“使用新的MyMethodEx 来代替!”)>_
Public Sub MyMethod()
像这样设置Obsolete 属性以后,代码中调用该废弃方法时会在任务列表内生成
警告信息。警告信息中会同时显示你在属性参数中设置的提示文字(如上面的
“使用新的MyMethodEx 来代替!”)。
8、设置编译前与编译后的生成步骤
选择“项目属性公用属性”(在2005 中为“项目属性生成事件”)。在
出现的生成事件对话框中,你可以设置编译前与编译后事件的命令行命令。这
些DOS 命令会在每次生成前或生成后执行。点击省略号按钮可以打开一个命令
行编辑器,你可以在其中一行一行地输入多个命令。这些命令可以是标准DOS
命令,比如COPY 或MOVE,也可以执行批处理或其它Windows 程序。所有命
令会按顺序执行,执行结果默认在VS.NET 生成过程中的输出窗口内输出。
9、生成方法存根
VS.NET 具有通过方法调用语句生成方法存根的功能。开发代码过程中,有时你
会发现在实际编写了方法本身之前先对其进行了调用。这种情况下你可以右键
点击方法调用,选择“生成方法存根”(如图67)或者使用新的智能标签。
VS.NET 会为该方法生成具有同样名称的外壳(如图68)。其中的参数类型与调
用时传入的参数类型完全一致,而且名称也完全一致(条件是调用时使用了变
量传入参数,而不是实际值)。在方法体内部,VS.NET 插入了一个NotImplementedException
者在生成程序之前忘记编写方法的具体内容。
使用预定义的代码段
10、设置程序集输出路径
不过这只是默认设置。你可以指定另外一个文件夹用来放置生成的程序集和外
部文件。选择“项目属性配置属性”(在2005 中,VB.NET 为“项目属性
编译”,C#为“项目属性生成”)。在输出路径一栏中设置一个绝对或相对
路径。该设置将从下一次生成起生效。
11、保存所有的输出窗口
输出窗口(Ctrl-Alt-O)中显示出你的程序运行时生成的许多跟踪信息。它记录
了每次.NET Framework 在何时为你的程序载入了一个dll 文件,以及你使用
System.Debug.WriteLine 发送的所有信息。。你只要在其中按一下Ctrl-S 就可以把输出内容保存为
一个文件。你可以在输出窗口中按Ctrl-F 进行查找,也可以使用我在第一章收
录的所有编辑器技巧,包括Ctrl-C 复制一整行,以及Ctrl-R, Ctrl-R 来切换词内
换行(虽然VS.NET 2005 为输出窗口的词内换行单独设计了一个按钮)。
12、重构代码
VS.NET 2005 中最受关注的新功能应该是重构代码。重构代码可以在不改变逻
辑结构的前提下重新整理代码,使代码变得更整洁。其中包括符号重命名,将
代码段复制到一个方法中,等等。你可以在VS.NET 中执行多种重构操作。右
键点击一段选区,选择“重构”。屏幕上会显示出多种可供选择的重构方式
提取方法(Ctrl-Alt-M, M)是指建立一个新方法,然后将选区代码移入该方法中,
同时在原位置生成对该方法的调用(如图66)。这一功能不只是单纯地移动代码。
VS.NET 会对该段代码进行检查,寻找未定义的变量,然后转化为方法的参数。重命名(Ctrl-Alt-M, R)可以为任意符号修改名称(变量,常量,枚举值等等)并
在整个解决方案中自动执行查找替换将所有使用该符号的地方修改为新名称。
以前,开发者在这种情况下只能手动进行全局查找替换,但往往会将字符串或
其它变量名中包含的该名称也一同替换掉。2005 中的重命名操作可以将字符串、
注释等部分排除在外,从而只修改真正的变量名。
字段封装(Ctrl-Alt-M, E)可以将一个私有字段转化为带有Get 和Set 函数的属性,
并将解决方案中所有对该字段的引用自动修改为对新属性的引用。
提取接口(Ctrl-Alt-M, I)可以将当前类中所有的属性和方法列出供你选择,然后
将选中的项目导出到单独的文件,为你的解决方案生成一个接口。这个自动生
成的接口中同样包含属性的Get 和Set 方法和各方法的签名。根据.NET 接口命
名规则,该接口会以类的名称前面加上I 命名。
最后,无需多加解释的将本地变量转为参数(Ctrl-Alt-M, P),删除参数(Ctrl-Alt-M,
V)和重设参数顺序(Ctrl-Alt-M, O)都是编写方法时强大的选项,随时在方法名上
点击右键就可以使用。
代码段是开发者可以选择插入而不必手工输入的预定义文字模板。比如说,你
需要一个Foreach 循环时,你不必输入全部代码,只需要输入一次foreach。智
能提示会给出带有代码段图标的foreach 选项(如图70)。选择后按Tab,VS.NET就会插入预定义的foreach 代码段。除了展开一个预定义的代码段之外,VS.NET 还会用黄色高亮显示所有的占位
符,使用时可以修改成自己需要的名称。按Tab 键可以在各占位符之间跳转。
13、自动对齐界面元素
在Windows 表单中给界面元素定位时,你会发现在移动元素或改变元素大小时
表单上出现的各种彩色线条(如图73)。它的作用是让你将界面元素水平或垂直
对齐。蓝色实线表示各元素已经对齐。绿色虚线表示移动某元素或改变其大小
时与其它元素之间的默认距离。这有助于使你的每个界面元素之间的距离保持
一致。红色实线表示当前元素中的文本与附近的一个元素或其中的文本实现了
对齐。如果你不想用这些线条来对齐元素,按Alt 就可以暂时关闭自动对齐。你还可以
切换回2002 和2003 使用的网格对齐模式。选择“工具选项Windows 表单
设计器一般选项”,将布局模式改为“网格对齐”。注意这样一来你需要重新
打开设计器才能使用新的布局模式。在网格对齐模式中,你可以按Ctrl 键来取
消元素的网格对齐。
14、精确控制C#代码格式
在VS.NET 2005 中,你可以精确地控制C#代码格式化方式。选择“工具选项
文本编辑器C#格式”,会显示出许多可以用来决定C#代码格式化方式的
设置选项,包括缩进,新行,空格和换行。似乎找不到你无法定义的项目。
验证HTML 代码的可访问性
在HTML 视图中,点击可访问性按钮(如图79)或者选择“工具检查可访问
性”。你也可以在解决方案浏览器中右键点击页面,选择“检查可访问性”。
显示所有按钮的快捷方式
工具栏按钮也有相应的提示。选择“工具自定义”,选中“显示工具栏上的屏幕提示”和“在屏幕提示中显示快捷键”两个选项。现在你把鼠标移过一个按
钮时,片刻之后显示出的提示中也会带有该按钮的快捷方式,如果有的话。
15、打乱你的.NET 程序
VS.NET 2003 和2005 中带有一个第三方打乱代码工具Dotfuscator。你可以选择
“工具Dotfuscator 社区版”运行它。
16、逐个字符地循环访问字符串
字符串在.NET 中是一个有趣的变量类型。虽然它们看上去很像值类型,其实它
们是引用类型。你可以在代码中为一个字符串赋值,但它们是不会变的(每次
你修改一个字符串时,实际都生成了一个新的字符串)。
字符串的一大特色是它们总具有字符数组的特征。也就是说,你可以使用简单
的Foreach 循环逐个字符地对一个字符串进行循环访问。
Foreach(char myChar in myString){…}
你也可以使用括号中的序数来指定字符串中的第7 个字符。
Char myChar = myString[6];
将内联字符串用作对象实例
内联字符串具有对象实例的特征,这使得字符串看起来更加深奥。如果你输入
一个字符串,在引号后面跟一个句点,智能提示会为你显示出与字符串变量一
样所有可用的方法。
String prefixRemoved = myString.Substring(“INFORMATION:”.length);