【发布时间】:2016-05-27 09:25:58
【问题描述】:
我有一个 Visual Studio Shell 2013 应用程序,我想升级到 Shell 2015,但遇到了与命令捕获相关的问题。在旧版本中,F1 命令被捕获并覆盖默认行为。 (基于How to capture Visual Studio commands in a VSPackage Plugin?)
这是 VSPackage 中与 shell 13 配合使用的代码:
m_objDTE = (DTE)GetService(typeof(DTE));
var F1HelpGuid = typeof(VSConstants.VSStd97CmdID).GUID.ToString("B");
var F1HelpID = (int)VSConstants.VSStd97CmdID.F1Help;
F1HelpEvent = m_objDTE.Events.CommandEvents[F1HelpGuid, F1HelpID];
F1HelpEvent.BeforeExecute += CapturedF1HelpCommand;
更新后 F1 命令不会被捕获。
你知道为什么会这样吗? F1 help Id 是否改变了?
【问题讨论】:
标签: c# envdte vspackage visual-studio-shell