這是我寫的關(guān)于VS2010和.Net4的 博客系列 的第27篇。 今天的文章繼續(xù)上星期我的 調(diào)試技巧文章 ,并談?wù)刅isual Studio里比較有用的搜索和瀏覽的技巧。我的朋友 Scott Cate (他寫了很多關(guān)于VS使用技巧和竅門的 博客 )最近向我強(qiáng)調(diào)了這些很好的技巧,大部分使
這是我寫的關(guān)于VS2010和.Net4的博客系列的第27篇。今天的文章繼續(xù)上星期我的調(diào)試技巧文章,并談?wù)刅isual Studio里比較有用的搜索和瀏覽的技巧。我的朋友Scott Cate(他寫了很多關(guān)于VS使用技巧和竅門的博客)最近向我強(qiáng)調(diào)了這些很好的技巧,大部分使用VS的開發(fā)人員好像不知道這些技巧(即使他們大部分都在產(chǎn)品開發(fā)組呆過一陣子)。
如果你還沒有使用過這些技巧,希望這篇博文能幫你發(fā)現(xiàn)它們。 它們學(xué)起來很容易,能幫你節(jié)省很多時間。
Ctrl + i漸進(jìn)搜索
大多數(shù)使用Visual Studio的程序員都習(xí)慣了在IDE里按“Ctrl + F”鍵來打開“查找窗口”。但令人驚訝的是,有很多程序員不知道Visual Studio里的“漸進(jìn)搜索”這個功能。它可以讓你在當(dāng)前文檔里進(jìn)行搜索,而且允許你不用打開對話框就可以搜索。
使用漸進(jìn)搜索
在編輯器里按“Ctrl + i”即可啟用漸進(jìn)搜索。它會換掉鼠標(biāo)圖標(biāo),并將IDE狀態(tài)欄的左下角改成“漸進(jìn)式搜索:(搜索關(guān)鍵字)”—你可以鍵入要搜索的關(guān)鍵字,并且編輯器會從你在源代碼的位置開始搜索(不用打開對話框)。
下面我們搜索“action”,VS會在文件里高亮第一次使用到它的地方。
我們可以接著按“Ctrl + i”來搜索下一個用到它的地方(可以重復(fù)多次):
按“Ctrl + Shift + i”可以反方向搜索,這樣避免回溯。
你可以通過“Esc”鍵跳出漸進(jìn)式搜索。這里有關(guān)于漸進(jìn)式搜索更詳盡的資料。
F3和Shift + F3 –使用以前的關(guān)鍵字查找
關(guān)于漸進(jìn)式搜索的一個很炫的技巧是,當(dāng)你按下ESC鍵退出搜索時,它會將關(guān)鍵字添加到IDE的查找棧里。在VS的標(biāo)準(zhǔn)工具欄上的“查找”下拉框,你可以看到用過的搜索關(guān)鍵字:
在Visual Studio里,按F3鍵可以讓你重復(fù)上次的搜索。這在你查找一些東西,改一下代碼,然后要從改動過的地方繼續(xù)搜索的時候非常有用。只要按下F3,你就可以在文檔新的位置上重復(fù)上次的搜索(例如“action”)—不需要重新鍵入搜索關(guān)鍵字。
按“Shift + F3”可以使用 上次搜索關(guān)鍵字進(jìn)行反向搜索(從光標(biāo)在編???器的當(dāng)期位置開始)。你可以很方便地用F3/Shift+F3的組合在文檔里向前向后搜索。
Ctrl + F3—搜索當(dāng)前選擇的文本
另外一個搜索技巧是,為了避免鍵入關(guān)鍵字,你可以在代碼編輯器里選中一個單詞(或單詞的一部分),然后按“Ctrl + F3”來在當(dāng)前文件搜索下一個用到它的地方:
按“Ctrl +F3”搜索選中文本的下一個實例—這樣避免你鍵入它:
跟前面講的類似,你可以用“Ctrl + Shift + F3”來進(jìn)行反向搜索,即從文本里回溯搜索。
Ctrl + Shift + F –在解決方案里搜索
有時你會想在整個解決方案里進(jìn)行搜索。
“Ctrl + F”打開的查找對話框默認(rèn)是在當(dāng)前文檔進(jìn)行搜索?!癈trl + Shift + F”打開的查找對話框默認(rèn)在整個解決方案里進(jìn)行搜索:
執(zhí)行一個這樣的搜索,會打開IDE里的“查找結(jié)果”窗口,你可以在里面定位到搜索關(guān)鍵字的每個實例:
你可以在“查找結(jié)果”窗口里雙擊一項來跳到關(guān)鍵字出現(xiàn)的地方。
有一個很多人都不知道的技巧,就是按“F8”或者“Shift + F8”可以在列表的前后項之間切換。這使得在里面定位變得更快更容易,這樣就不用使用鼠標(biāo)來進(jìn)行移動了。
Shift + F12 –查找用途
大部分使用Visual Studio的程序員都知道選中一個類型,然后按F12來“轉(zhuǎn)到定義”。它會跳轉(zhuǎn)到定義類型的地方,這樣查看類型定義就變得很方便。
但大部分程序員都不知道“Shift + F12”—它會找出所有用到一個特定類型的地方。讓你快速找到一個類型的用法。要用它,只要選中或者把光標(biāo)放在一個類型,然后按“Shift + F12”:
然后它會打開“查找符號結(jié)果”窗口,并列出當(dāng)前解決方案里所有用到這個類型的地方:
跟前面一樣,按“F8”或者“Shift + F8”可以在列表的前后項之間切換。
Ctrl +減號和Shift + Ctrl +減號–向前/向后定位
打開另一個代碼文件,查看一些東西,然后想回到前面文件的位置,這樣的經(jīng)歷你有過嗎?比如說,用F12“轉(zhuǎn)到定義” 后,然后要跳回原來用到類型的代碼那里?
一個很多人都不知道的VS的功能,就是“回溯定位”組合鍵—“Ctrl + (減號鍵)”。它會在導(dǎo)航棧中跳轉(zhuǎn)到以前的文檔或者位置。
要看它是如何工作的,請先在Visual Studio里選中一個類型。下面我選中了“IController”接口:
按F12跳到它的定義處,會打開一個新的編輯器窗口并顯示選中類型的源代碼:
現(xiàn)在要回到我們當(dāng)初的位置,按“Ctrl + (減號鍵)”,然后VS就會把我們帶回原來的地方:
而如果你想要在導(dǎo)航棧里往前走(也就是要回到IController.cs文件),那就按“Shift + Ctrl + (減號鍵)”。
Sara Ford有一篇不錯的文章深入講解了這個功能,還解釋了將新的位置壓入導(dǎo)航棧的條件。
Ctrl + Alt +(向下鍵)-定位一個打開的文件
曾經(jīng)在IDE里打開了數(shù)不清的文件,想要找到一個容易的方法漫步其中?
一個很有用的按鍵組合就是“Ctrl + Alt + (向下鍵)”—這時VS會顯示一個下拉框并列出所有打開的文件:
你可以使用箭頭鍵來選擇要瀏覽的文件—或者最好開始敲文件名,Visual Studio會為你在列表里高亮它。比如說,上面我敲了“Mo”,Visual Studio高亮“ModelBinder.cs”。按下“Enter”鍵就會幫我打開那個文件:
這是一個在文件之間很好的、便利的瀏覽方式,不需要使用鼠標(biāo),或者要讓你的手離開鍵盤。另外記住“Ctrl + (減號)”可以讓你回到原來的位置。
定位到,調(diào)用層次結(jié)構(gòu)和引用高亮功能
Visual Studio 2010提供了一大批新的代碼定位和查找功能—包括新的“定位到”對話框,“查看調(diào)用層次結(jié)構(gòu)”功能和引用高亮功能:
我在之前的博客里提到了VS 2010這三個新功能。如果你還沒有讀過這篇文章并體驗它們的能量,我非常推薦你去試試—它們是很好的補(bǔ)充。
編輯器其他方面的改進(jìn)
VS 2010里面有數(shù)不清的改進(jìn)—我在之前的博客里也提到很多。這使我之前的幾篇VS 2010編輯器的文章:
·改進(jìn)過的C#/VB代碼智能感知
·改進(jìn)過的JavaScript代碼智能感知
·框選和多行編輯支持
·ASP.NET, HTML和JavaScript代碼片段支持
另外也請看看我關(guān)于VS 2010和.NET 4改進(jìn)系列的其他博客。
總結(jié)
上面大部分功能實際在Visual Studio已經(jīng)存在了好幾個版本—但還是有非常多的程序員不知道他們。希望這篇博客提供了一條捷徑幫你了解它們。如果你需要記住這些按鍵—打印一份VS 2010快鍵招貼畫,并貼在你顯示器旁邊。
如果還要學(xué)習(xí)更多的Visual Studio技巧,請訂閱Scott Cate的Visual Studio技巧系列文章(里面已經(jīng)有83個超棒的技巧了),也可以訂閱Sara Ford的博客—?dú)v年來,她也有一個很棒的技巧集。
希望這能對您有所幫助。
Scott
原文:http://weblogs.asp.net/scottgu/archive/2010/08/24/search-and-navigation-tips-tricks-with-visual-studio.aspx
中文翻譯:http://blogs.msdn.com/b/scottgu/archive/2011/10/08/visual-studio-1.aspx
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com