手把手教你裝飾vs2005-項目上如何添加右鍵菜單
在上一篇文章手把手教你制作vs2005裝飾 中,主要介紹了如何創建和部署addins,在有了這個基礎的前提條件下,我們看下如何在解決方案資源管理器中如何添加右鍵菜單和如何自定義輸出。
仍然是在OnConnection中添加創建右鍵菜單的代碼:
CommandBarEvents menuItemHandler;
string addinName = "垃圾清除";
_applicationObject = (DTE2)application;
_addInInstance = (AddIn)addInInst;
//獲得項目的命令行菜單
CommandBars cmdBars = (CommandBars)(_applicationObject.DTE.CommandBars);
CommandBar vsBarProject = cmdBars["Project"];
CommandBarControl menuItem = vsBarProject.Controls.Add(MsoControlType.msoControlButton, 1, "", 2, true);
menuItem.Tag = addinName;
menuItem.Caption = addinName;
menuItem.TooltipText = addinNam
menuItemHandler = (CommandBarEvents)_applicationObject.DTE.Events.get_CommandBarEvents(menuItem);
menuItemHandler.Click += new _dispCommandBarControlEvents_ClickEventHandler(MenuItem_Click);
上面一段代碼,作用是在項目的右鍵菜單上增加一個名稱為垃圾清除的菜單,CommandBars和CommandBar是用于管理命令欄的接口,通過
menuItemHandler = (CommandBarEvents)_applicationObject.DTE.Events.get_CommandBarEvents(menuItem);
menuItemHandler.Click += new _dispCommandBarControlEvents_ClickEventHandler(MenuItem_Click);
來添加子菜單的點擊事件。
private void MenuItem_Click(object commandBarControl, ref bool handled, ref bool cancelDefault)
{
try
{
Project prj = (Project)((Array)_applicationObject.ActiveSolutionProjects).GetValue(0);
SpilthCleaner.Executor e = new SpilthCleaner.Executor();
string res = e.Clear(System.IO.Path.GetDirectoryName(prj.FullName), prj.FullName);
OutputWindowTest(_applicationObject, res);
}
catch (Exception ex)
{
OutputWindowTest(_applicationObject, ex.Message);
}
}
Click事件中是完成了對項目垃圾文件的清除和清除結果的輸出,要想在輸出窗口中輸出自定義的內容,可以使用下面的方法
public void OutputWindowTest(DTE2 dte,string outputStr)
{
//獲得輸出窗口
OutputWindow ow = dte.ToolWindows.OutputWindow;
//創建屬于自己的輸出類型
OutputWindowPane owP;
owP = ow.OutputWindowPanes.Add("垃圾清理");
//輸出文字內容
owP.OutputString(outputStr);
}
這篇文章參考了dudu老大的 VS 2005 Add-in開發隨筆 ,非常老大為我指明了方向。
vs2005是一個擴展性比較強大的平臺,雖然沒有eclipse支持插件那樣猛,可通過我們的挖掘,還是能在vs2005上安裝不少裝飾的,我這篇主要寫了如何添加右鍵菜單和輸出自定義內容,這個菜單主要完成的工作是清除項目文件夾中沒有被項目引用的垃圾數據,下面是源碼,大家使用的時候,將相應的.dll和.addins拷貝到C:\Documents and Settings\Administrator\My Documents\Visual Studio 2005\Addins就可以了
有關垃圾清除的文章:發布小工具- 項目垃圾文件清理器(更新070920)
上篇文章: 手把手教你制作vs2005裝飾
源碼文件:/Files/jillzhang/SpitchCleaner.rar
效果圖:
1.在項目的右鍵菜單增加 垃圾清理 子菜單

2.點擊垃圾清除后的自定義輸出

不明白的TX,可以下載源程序下去看看
仍然是在OnConnection中添加創建右鍵菜單的代碼:
CommandBarEvents menuItemHandler;string addinName = "垃圾清除";
_applicationObject = (DTE2)application;_addInInstance = (AddIn)addInInst;
//獲得項目的命令行菜單
CommandBars cmdBars = (CommandBars)(_applicationObject.DTE.CommandBars);
CommandBar vsBarProject = cmdBars["Project"];
menuItem.Tag = addinName;
menuItem.Caption = addinName;
menuItem.TooltipText = addinNammenuItemHandler = (CommandBarEvents)_applicationObject.DTE.Events.get_CommandBarEvents(menuItem);
menuItemHandler.Click += new _dispCommandBarControlEvents_ClickEventHandler(MenuItem_Click); 上面一段代碼,作用是在項目的右鍵菜單上增加一個名稱為垃圾清除的菜單,CommandBars和CommandBar是用于管理命令欄的接口,通過
menuItemHandler = (CommandBarEvents)_applicationObject.DTE.Events.get_CommandBarEvents(menuItem);
menuItemHandler.Click += new _dispCommandBarControlEvents_ClickEventHandler(MenuItem_Click);
來添加子菜單的點擊事件。
private void MenuItem_Click(object commandBarControl, ref bool handled, ref bool cancelDefault)
{
try
{
Project prj = (Project)((Array)_applicationObject.ActiveSolutionProjects).GetValue(0);
SpilthCleaner.Executor e = new SpilthCleaner.Executor();
string res = e.Clear(System.IO.Path.GetDirectoryName(prj.FullName), prj.FullName);
OutputWindowTest(_applicationObject, res);
}
catch (Exception ex)
{
OutputWindowTest(_applicationObject, ex.Message);
}
}Click事件中是完成了對項目垃圾文件的清除和清除結果的輸出,要想在輸出窗口中輸出自定義的內容,可以使用下面的方法
public void OutputWindowTest(DTE2 dte,string outputStr)
{
//獲得輸出窗口
OutputWindow ow = dte.ToolWindows.OutputWindow;
//創建屬于自己的輸出類型
OutputWindowPane owP;
owP = ow.OutputWindowPanes.Add("垃圾清理");
//輸出文字內容
owP.OutputString(outputStr);
}這篇文章參考了dudu老大的 VS 2005 Add-in開發隨筆 ,非常老大為我指明了方向。
vs2005是一個擴展性比較強大的平臺,雖然沒有eclipse支持插件那樣猛,可通過我們的挖掘,還是能在vs2005上安裝不少裝飾的,我這篇主要寫了如何添加右鍵菜單和輸出自定義內容,這個菜單主要完成的工作是清除項目文件夾中沒有被項目引用的垃圾數據,下面是源碼,大家使用的時候,將相應的.dll和.addins拷貝到C:\Documents and Settings\Administrator\My Documents\Visual Studio 2005\Addins就可以了
有關垃圾清除的文章:發布小工具- 項目垃圾文件清理器(更新070920)
上篇文章: 手把手教你制作vs2005裝飾
源碼文件:/Files/jillzhang/SpitchCleaner.rar
效果圖:
1.在項目的右鍵菜單增加 垃圾清理 子菜單
2.點擊垃圾清除后的自定義輸出
不明白的TX,可以下載源程序下去看看
作者:jillzhang
出處:http://jillzhang.cnblogs.com/
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。
出處:http://jillzhang.cnblogs.com/
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。


浙公網安備 33010602011771號