Frage

I need to add a property to the property grid of each project item. However, if I register my extender provider with EnvDTE.Constants.vsCATIDDocument, it is never called. It works if I register it with vsCATIDSolutionBrowseObject, but it's not what I want...

I register the extender provider in the Initialize method of my package:

var dte = (DTE) GetGlobalService(typeof(DTE));
_extenderProvider = new TheExtenderProvider();
_extenderProviderCookie = dte.ObjectExtenders.RegisterExtenderProvider(EnvDTE.Constants.vsCATIDDocument, "TheExtenderProvider", _extenderProvider);

How can I make it work? Should I use a different CATID ?

War es hilfreich?

Lösung

I spent hours looking for the solution, and I found it minutes after I posted the question here...

I just had to use VSConstants.CATID.CSharpFileProperties_string and VSConstants.CATID.VBFileProperties_string. Now my extender is called for each project item.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top