如何获取Visual Studio命令列表?

时间:2012-08-07 13:14:41

标签: c# visual-studio-2010 vsix visual-studio-extensions

我们正在开发一个VS扩展,它需要一个Visual Studio命令列表,如此屏幕截图中的那个:

Screen Shot from Visual Studio 2010, Tools > Options > Keyboard

示例:

  • Action.Add
  • Action.Add.NETFrameworkLaunchCondition
  • Action.AddAction
  • ......等。

我们在哪里可以找到或如何访问此列表?

3 个答案:

答案 0 :(得分:8)

您可以通过DTE接口访问它。通过GetService(typeof(SDTE))(或其他适当的机制)获取EnvDTE.DTE接口,然后:

EnvDTE.DTE dte = ...;
var commands = dte.Commands.Cast<EnvDTE.Command>();

foreach (var command in commands.OrderBy(c => c.Name))
{
    Console.WriteLine(command.Name);
}

我应该提到这可能会很慢,所以如果你可以,最好避免......

答案 1 :(得分:3)

visual studio包含此列表...\Microsoft Visual Studio 9.0\Common7\IDE\*.vsk

答案 2 :(得分:0)

Here是由Mads Kristensen为他的VS VoiceExtension编制的VS命令的便捷列表。