0

使用托管 C++(新项目向导中的 C++/CLR)处理 VisStudio 2008 插件。

在 OnConnection() 函数中,我想向 WindowEvents 集合添加一个处理程序。

当我这样做时:
// 连接事件
EnvDTE::Events ^ events = _applicationObject->Events;
EnvDTE::WindowEvents ^winEvents = 事件->WindowEvents();

我收到一条错误消息:
错误 C2660:'EnvDTE::Events::WindowEvents::get':函数不接受 0 个参数

在对象浏览器中,我发现:
public EnvDTE.WindowEvents WindowEvents(EnvDTE.Window WindowFilter = null) { get; }

感谢您对我做错的任何提示...

4

2 回答 2

1

尝试

EnvDTE::WindowEvents ^winEvents = events->WindowEvents;

没有()。WindowEvents 是属性而不是方法。

于 2009-07-02T16:16:54.143 回答
1

找到了答案:

EnvDTE::Events ^ events = _applicationObject->Events;
_winEvents = events->WindowEvents[nullptr];

注意方括号...

于 2009-07-06T19:55:49.110 回答