我正在编写Visual Studio 2008扩展。我希望每次DTE.ActiveDocument更改时都会收到通知,因此我可以在自定义面板中更新某些内容,该面板执行与解决方案资源管理器类似的功能。我还没有找到发生这种情况时发生的任何事件。有这样的事件吗?

具体来说,我正在寻找类似的东西:

var dte = GetService(typeof(EnvDTE._DTE)) as EnvDTE.DTE;
dte.Events.DTEEvents.ActiveDocumentChanged += s => {
    // implies dte.ActiveDocument has changed value
}

最佳答案

我相信你正在寻找这个事件

_applicationObject.Events.WindowEvents.WindowActivated

如果您只对文档激活更改感兴趣,请检查GotFocus.Document == null
希望这可以帮助

关于c# - 当DTE.ActiveDocument更改时得到通知,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10353536/

10-10 11:30