2011-07-12 45 views
6

我使用的是VS 2010,當我輸入「else」時,它會自動返回行並添加大括號。喜歡的東西:

從自動創建大括號停止VS 2010關鍵字else關鍵字

else 
{ 

} 

我無法想象我是唯一一個誰常常使單行的其他人後,喜歡沒有括號。我如何阻止這種情況發生?

+5

不是一個問題的答案,但總是用括號中(我發現)的好習慣進入/標準來使用,因爲它避免了任何可能的未來的臭蟲單行別人變成多否則不正確。 – Joe

+0

需要採取的一點,我只是奇怪的是,只有幾行我想快速簡單地返回一些東西的方法,VS想讓我把括號放在他們不熟悉的地方。 – themaestro

回答

2

好吧,終於想出了這到底是什麼。我在這臺機器上安裝了ReSharper,顯然「else」關鍵字是一個ReSharper自動完成關鍵字。所以即使在我關閉大括號完成後,ReSharper仍然在踢,並加入它們。憤怒。爲了制止這種情況,您必須關閉ReSharper自動完成功能。

0

我不認爲有任何方法可以禁用具體關鍵字的大括號自動完成。如果你去:

Tools -> Options -> Text Editor -> C# -> Formatting 

你會發現各種格式選項。可以通常禁用自動完成或影響縮進等,但我沒有看到任何方式禁用特定關鍵字的大括號自動完成。

0

您使用的是Productivity Power Tools?您可以在工具,選項,「生產力動力工具」,「自動大括號完成」中關閉它。 (我知道我是)

+0

嘿,這不是,但我做DL延長。很光滑。 – themaestro

12

我也發現這種行爲很煩人。

我的第一次嘗試涉及到打開Templates Explorer(ReSharper/Templates Explorer ...),選擇C#,然後取消選中「else」。這確實消除了大括號。不幸的是,在「else」之後點擊enter現在只是增加了一個空間!我不得不擊中兩次。不完全是我所希望的。

但是,如果你雙擊else模板,它會打開一個編輯器,你可以指定發生什麼。我發現簡單地去除大括號給了我想要的功能 - 在別人現在把我放在一個新的行上後,進入下一個選項,在其他選項下面選項卡 - 沒有大括號。

回顧一下,要解決這個問題,您需要打開Resharper的模板資源管理器,選擇C#範圍,然後雙擊else模板並移除大括號。您的模板「片段」應該是這樣的(只是兩行):

else 
    $END$ 

這個作品在ReSharper的6.1和Visual Studio 2008我不知道該軟件的其他版本的想法。

+1

謝謝,這個伎倆!適用於VS2012和Resharper 7 ... – thesaint