人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

用C#寫vs插件中的一些Tip

用C#寫vs插件中的一些Tip

更新時間:2022-08-28 文章作者:未知 信息來源:網絡 閱讀次數:

最近用C#寫了一個vs的插件,主要功能是插入標準的注釋段和一些常用的代碼段。在開發過程中,遇到了一些問題,也翻閱了一些資料,做了一番研究。這里對其中的一些小問題做一個簡單的紀錄,希望能夠有所幫助。

(1)在OnConnection中,判斷connectMode時,一定要加上ext_cm_AfterStartup

   if(connectMode == Extensibility.ext_ConnectMode.ext_cm_UISetup
    || connectMode == Extensibility.ext_ConnectMode.ext_cm_Startup
    || connectMode == Extensibility.ext_ConnectMode.ext_cm_AfterStartup) // this line will work when u choose addin in addin manager
這樣子,在vs的Addin Manager中選中插件時,插件才會重新顯示出來,一般的范例中,只有前兩個判斷

(2)QueryState中,設置state時,要使用下面語句

    if( 是你加入的command )
    {
     if( 滿足顯示的條件 )
      status = (vsCommandStatus)vsCommandStatus.vsCommandStatusSupported|vsCommandStatus.vsCommandStatusEnabled;
     else
      status = (vsCommandStatus)vsCommandStatus.vsCommandStatusSupported;
    }
    else
     status = (vsCommandStatus)vsCommandStatus.vsCommandStatusUnsupported;
這樣做,才能在條件不滿足時,插件的菜單變灰

(3)判斷代碼窗口存在的方法是

(applicationObject.ActiveWindow != null) && (applicationObject.ActiveWindow.Type == vsWindowType.vsWindowTypeDocument)

就是說當前有活動窗口,而且其類型是文檔類型

(4)在文檔窗口插入字符的方法是

   TextSelection ts = (TextSelection)applicationObject.ActiveDocument.Selection;
   EditPoint ep = ts.ActivePoint.CreateEditPoint();
    
   ep.Insert(strCode);
當然,還可以調用EditPoint的其它方法,來實現刪除,替換等等

差不多就醬紫了,感覺用C#來做插件程序好簡單啊,同時感到微軟設計的對象模型用起來真是舒服,平時開發時如果能夠自己設計出這么好的系統,該有多好阿,哈哈


溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 牡丹江市| 峨边| 岳阳县| 婺源县| 申扎县| 襄汾县| 承德县| 晋宁县| 布拖县| 延长县| 嘉黎县| 河南省| 苏尼特右旗| 海门市| 广平县| 崇左市| 乌拉特前旗| 奇台县| 崇阳县| 英吉沙县| 孝昌县| 谷城县| 城固县| 麟游县| 绥江县| 平塘县| 广东省| 淮南市| 获嘉县| 汕头市| 德清县| 黎平县| 巫山县| 太原市| 平遥县| 贡觉县| 葫芦岛市| 体育| 康定县| 桓台县| 黑水县|