2009-01-28 29 views
6

當在Visual Studio中使用包含多行的代碼片段時,以下幾行將保留在.snippet文件中設置的空白,而不是將代碼相對於原始光標位置進行定位。是否可以在Visual Studio中插入相對於光標位置的多行代碼片段?

當使用foreach代碼片段,你會得到這樣的代碼:

foreach (var item in collection) 
{ 

} 

相反的:

foreach (var item in collection) 
    { 

    } 

有沒有辦法來改變這種行爲?是否有需要在.snippet文件中使用的關鍵字?

回答

3

片段文件的代碼部分包含在保留空白的CDATA中。我可以告訴你的最好的事情是進入文件並編輯它以適應你的需求。您唯一的其他選擇是快速執行Ctrl + KCtrl + D在使用片段自動格式化代碼以修復縮進之後。

+0

我想你的意思是按Ctrl + K,Ctrl鍵+ d,按Ctrl + K,Ctrl + C鍵是評論選擇。 – Phaedrus 2009-01-28 17:08:17

+0

是的,謝謝!固定。 – 2009-01-28 18:22:52

1

編輯的這段文件:

  1. 打開一些文本編輯器,如記事本,以管理員身份
  2. 打開要解決,例如,foreach.snippet的片段文件。 (位於我的計算機上的C:\ Program Files文件(x86)\ Microsoft Visual Studio 10.0 \ VC#\ Snippets \ 1033 \ Visual C#中)
  3. 刪除代碼元素的前導選項卡。

     <Code Language="csharp"><![CDATA[foreach ($type$ $identifier$ in $collection$) 
         { 
          $selected$ $end$ 
         }]]> 
         </Code> 
    

到:所以代碼... XML元素從改變

  <Code Language="csharp"><![CDATA[foreach ($type$ $identifier$ in $collection$) 
{ 
    $selected$ $end$ 
}]]> 
      </Code> 
相關問題