托管 C 中的事件:事件、WindowEvents 问题

发布于 2024-07-26 04:46:25 字数 521 浏览 5 评论 0原文

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

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

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

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

在对象浏览器中我找到了这个:
公共 EnvDTE.WindowEvents WindowEvents(EnvDTE.Window WindowFilter = null) { get; 感谢

您对我做错了什么的任何提示......

Working on a VisStudio 2008 addin, using managed C++ (C++/CLR in the New Project wizard).

In the OnConnection() function, I want to add a handler to the WindowEvents collection.

When I do this:
// Hook up events
EnvDTE::Events ^ events = _applicationObject->Events;
EnvDTE::WindowEvents ^winEvents = events->WindowEvents();

I get an error message:
error C2660: 'EnvDTE::Events::WindowEvents::get' : function does not take 0 arguments

In the Object Browser I find this:
public EnvDTE.WindowEvents WindowEvents(EnvDTE.Window WindowFilter = null) { get; }

Thanks for any hints about what I'm doing wrong...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

握住你手 2024-08-02 04:46:25

尝试

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

不使用 ()。 WindowEvents 是一个属性而不是方法。

Try

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

without the (). WindowEvents is a property not a method.

微凉徒眸意 2024-08-02 04:46:25

找到答案:

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

注意方括号......

Found the answer:

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

Note the square brackets...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文