Number8
Number8

Reputation: 12870

Events in Managed C++: Problem with Events, WindowEvents

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...

Upvotes: 0

Views: 893

Answers (2)

Number8
Number8

Reputation: 12870

Found the answer:

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

Note the square brackets...

Upvotes: 1

CodeFusionMobile
CodeFusionMobile

Reputation: 15110

Try

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

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

Upvotes: 1

Related Questions