键盘快捷方式不适用于VSIX安装程序

时间:2014-12-01 23:30:01

标签: c# visual-studio shortcut vsix

我已经创建了一个VSIX包,并且我在.vsct文件中添加了KeyBindings部分。当我运行Visual Studio的实验实例时,键盘快捷键可以工作,但是当我在我的机器上实际安装vsix包时,键盘快捷键不起作用,尽管addin的其他方面工作。还有什么能够阻止快捷方式正确绑定吗?

密钥绑定

<KeyBindings>
        <KeyBinding guid="MyAddinCmdSet" id="cmdidRollback" editor="guidVSStd97" key1="VK_NUMPAD2" mod1="CONTROL"/>         
</KeyBindings>

我的vspackage中的命令

CommandID CommandIDRollback = new CommandID(GuidList.MyAddinCmdSet, (int)PkgCmdIDList.cmdidRollback);
                MenuCommand menuItemRollback = new MenuCommand(MenuItemCallbackRollback, CommandIDRollback);
                mcs.AddCommand( menuItemRollback);

1 个答案:

答案 0 :(得分:0)

key1="VK_NUMPAD2"是数字小键盘2键,不适用于“ 2 K”键盘, 您可以使用键码0x32,但是此快捷方式已经为QueryDesigner.Criterria()保留,因此您将无法使用它。

如果您将数字小键盘作为目标,但无法正常工作,则必须确保此快捷键未保留用于Visual Studio功能。

有关键控代码,请参见Virtual-Key Codes

将您的代码更改如下:

<KeyBindings>
   <KeyBinding guid="MyAddinCmdSet" id="cmdidRollback" editor="guidVSStd97" key1="0x32" mod1="CONTROL"/>         
</KeyBindings>