2012-09-14 101 views
0

正在關注this link我有一組代碼片段。篩選列表視圖中可見的代碼片段列表

但是片段插入必須是w.r.t上下文,即,如果我在聲明一個類之前執行「插入片段」,它不應該顯示「方法聲明」片段。 還需要根據託管或非託管代碼篩選代碼段。

總之我要尋找的機制如下:

if <condition> 
{ 
modify list of snippets visible in the menu 
} 

我們有這樣一個機制或類似的東西?想法歡迎。

回答

0

我找到了解決我的問題。希望它能幫助別人。

我跟着鏈接上的說明: Video on Code Snippets & Code Element

得到了snippet.xml文件包含以下內容:

<Code Language="Language" 
    Kind="method decl"> 
     Code to insert 
</Code> 

然後叫在FilterView類expansionProvider.DisplayExpansionBrowser(參考視頻):

string[] kind = new string[1];        
kind[0] = "method decl"; 
return expansionProvider.DisplayExpansionBrowser(TextView, 
               snippets, 
               null, false, kind, false); 

因此特定片段將出現在'方法聲明'上下文中。因此可以完成其他片段。 XML必須保存上下文信息。