Visual Studio 装饰扩展事件未被触发。

4
我正在尝试为我的Visual Studio插件创建基本的装饰功能。我已经设置了一个工具窗口和一些命令,并且正在尝试让adornment工作。根据Microsoft提供的演示文稿,我认为将创建监听器类添加到我的项目并按照演示文稿中的设置进行设置后,Visual Studio会自动加载我的插件的该部分并为我创建监听器。然而,我监听的事件似乎从未被触发过。以下是我正在使用的主要代码片段。
[Export(typeof(IWpfTextViewCreationListener))]
[ContentType("code")]
[TextViewRole(PredefinedTextViewRoles.PrimaryDocument)]
internal sealed class Flare_Client_AdornmentFactory : IWpfTextViewCreationListener {


    public void TextViewCreated(IWpfTextView textView) {
        new Flare_Client_Adornment(textView);
    }
}

我觉得我可能漏掉了一步,我需要在某个地方注册这个事件,但我不知道该去哪里寻找。我需要做什么才能注册这个事件?

1个回答

4
我已经找到了问题所在。由于我正在将装饰添加到现有的VsPackage项目中,因此需要在我的vsixmanifest中设置另一个资产,以使我的项目也成为MefComponent(这是装饰的项目类型)。
以下是我的vsixmanifest的截图,以更好地展示我的解决方案。

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接