我正在为VS 2012开发一个插件。我在Project
命令栏中添加了一个按钮和命令。
现在,点击Project
后,我在右键菜单中有了按钮。
我现在要做的就是列出点击该按钮的项目中的所有*.cs
个文件,并有权编辑它们。
我需要“Exec”功能中的信息“捕捉”我的命令。
怎么做?
我的代码:
_CommandBars cmdBars = (_CommandBars)_applicationObject.CommandBars;
CommandBar vsBarProject = cmdBars["Project"];
CommandBarPopup pluginProjectFolderPopup = (CommandBarPopup)vsBarProject.Controls.Add(MsoControlType.msoControlPopup, System.Reflection.Missing.Value, System.Reflection.Missing.Value, 1, true);
pluginProjectFolderPopup.Caption = "Plugin";
try
{
Command command = commands.AddNamedCommand2(_addInInstance, "TestRightClickProject", "Plugin test", "Testing right click command on code window", true, 59, ref contextGUIDS, (int)vsCommandStatus.vsCommandStatusSupported + (int)vsCommandStatus.vsCommandStatusEnabled, (int)vsCommandStyle.vsCommandStyleText, vsCommandControlType.vsCommandControlTypeButton);
if ((commands != null) && (pluginProjectFolderPopup != null))
{
command.AddControl(pluginProjectFolderPopup.CommandBar, 1);
}
}
catch (System.ArgumentException)
{
}
更新: 我没有选择。我必须使用插件
答案 0 :(得分:1)
看看这个问题的答案:
Visual Studio 2010 Plug-in - Adding a context-menu to the Solution Explorer
确定所选项目后(参见
)_applicationObject.SelectedItems.Item(1).Project
)
您可以使用ProjectKinds.vsProjectKindSolutionFolder获取项目文件夹(请参阅 How to get folders under projects?)
然后遍历所需的文件夹和子文件夹。