Я написал дополнение, которое принимает активный документ в качестве параметра. Поэтому каждый раз, когда активный документ изменяется, мне нужно знать. Для этого я хотел использовать событие «Events.DocumentEvents.DocumentOpened» объекта DTE2. Но проблема в том, что событие никогда не запускается, даже если я изменяю активный документ.
Фрагмент кода выглядит следующим образом
public void OnConnection(object application, ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
_applicationObject = (DTE2)application;
_applicationObject.Events.DocumentEvents.DocumentOpened += new _dispDocumentEvents_DocumentOpenedEventHandler(DocumentEvents_DocumentOpened);
...
}
void DocumentEvents_DocumentOpened(Document Document)
{
MessageBox.Show("Not called");
}
Я тоже пробовал с DocumentEvents, но безуспешно. Есть идеи?