我正在尝试 Visual Studio 2010 扩展,其中我需要处理 IMouseProcessor 公开的事件。
据我从文档中可以看出,我应该创建一个 IMouseProcessorProvider 并使用 MEF 导出,以便 Visual Studio 可以自动选取它。
我创建了这个类:
[Export(typeof(IMouseProcessorProvider))]
[ContentType("code")]
internal sealed class MouseProcessorFactory : IMouseProcessorProvider
{
public IMouseProcessor GetAssociatedProcessor(IWpfTextView wpfTextView)
{
return new MouseProcessor();
}
}
当我运行 Visual Studio 的实验实例时,我的扩展在扩展管理器中可见。但我的自定义鼠标处理器提供商从未被调用。我错过了什么/我做错了什么吗?
直接取自此(不是我的)网站:
扩展 Visual Studio 2010 UML 设计器 – 第 1 部分:入门
VSSDK Beta 2 错误解决方法
不幸的是,当前的 VSSDK Beta 2 中存在一些我们必须解决的错误。我被告知它们将在更新版本中得到修复,但在那之前,让我带您完成完成这项工作所需的项目清理:
步骤 1 – 调整 .csproj 文件
- 右键单击您的项目并选择“卸载项目”。
- 再次右键单击您的项目并选择“编辑您的项目名称.csproj”
- 在最上面的属性组中,查找 XML 标记
<IncludeAssemblyInVSIXContainer>
。它将被设置为 false。将其更改为 true。
- 保存 .csproj 文件并将其重新加载到 Visual Studio 中。
步骤 2 – 调整 .vsixmanifest 文件
- 右键单击文件“source.extension.vsixmanifest”并选择“查看代码”
-
在文件底部名为的部分中添加以下行。 (是的,那些竖线很重要。)
<MefComponent>|Yourprojectname|</MefComponent>
保存并关闭文件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)