相关疑难解决方法(0)

DTE2事件不会发生

在尝试开发我的第一个VS Addin时,我遇到了解雇DTE2事件的问题.

基本上,DocumentOpened和LineChanged事件由于某种原因不会触发.我错过了什么重要的部分?

namespace TestAddin {
  public class Connect : IDTExtensibility2 {
    private AddIn _addInInstance;
    private DTE2 _applicationObject;

    public void OnConnection(object application, ext_ConnectMode connectMode, object addInInst, ref Array custom) {
      _applicationObject = (DTE2) application;
      _addInInstance = (AddIn) addInInst;

      _applicationObject.Events.DocumentEvents.DocumentOpened += InitializeFoldingOnDocument;
      _applicationObject.Events.TextEditorEvents.LineChanged += UpdateFoldingOnDocument;
    }

    private void UpdateFoldingOnDocument(TextPoint startpoint, TextPoint endpoint, int hint) {
      RegionFolding(_applicationObject.ActiveDocument);
    }

    private void InitializeFoldingOnDocument(Document document) {
      RegionFolding(document);
    }

    private void RegionFolding(Document _document) {
      // Do the folding [...]
    }

    // Other IDTExtensibility2 Members [...]
  } …
Run Code Online (Sandbox Code Playgroud)

c# events visual-studio-addins visual-studio-2010 vs-extensibility

10
推荐指数
1
解决办法
1937
查看次数