2009-02-23 16 views
5

Eklentim bir çözüm yüklendiğinde nasıl algılanabilir? DTE modelinde bir yerde bir olay olması gerektiğini biliyorum, ama bulamıyorum. Eklentim, Visual Studio yüklendiğinde yüklenir, ancak açık olan bir çözüme bağlıdır. Çözüm eklentileri COM bileşenleri olması gerektiğinden, MS, COM üzerinde hasta sabitleme kaybeder kadar bir çözüm eklenti yapmak istemiyorum.Çözüm eklendiğinde eklenti nasıl algılanabilir?

cevap

8

Burada C# kullanarak olay işleme kayıt için:

_solutionEvents = _applicationObject.Events.SolutionEvents; 
_solutionEvents.Opened += new _dispSolutionEvents_OpenedEventHandler(SolutionOpened); 
_solutionEvents.AfterClosing += new _dispSolutionEvents_AfterClosingEventHandler(SolutionClosed); 

Ayrıca kullanıcı çözüm dosya üzerinde çift tıklayarak Visual Studio açıldığında size çözüm açılması için bir etkinlik olsun unutmayın. Bu durumu doğru şekilde ele almak için _applicationObject.Solution öğesinin OnStartupComplete yönteminde boş olmadığını kontrol etmelisiniz. Açılmış

:

0

MSDN ilgili SolutionEvents sınıf etkinliği içeren bir çözelti ya da bir proje açıldıktan hemen sonra meydana gelir. Sen DTE2 sınıfında var

0

Events denilen bir özellik bunu kullanmak zorunda gerekenler için olayların bir sürü tür verir:

DTE2 _applicationObject 
_applicationObject.Events.SolutionEvents.Opened+=new _dispSolutionEvents_OpenedEventHandler(SolutionEvents_Opened); 
İlgili konular