gpt4 book ai didi

c# - VS 2010 鼠标处理器扩展 - 不工作

转载 作者:行者123 更新时间:2023-12-04 22:52:52 27 4
gpt4 key购买 nike

我正在试验 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 的实验实例时,我的扩展在扩展管理器中可见。但是我的自定义鼠标处理器提供程序永远不会被调用。我错过了什么/我做错了什么?

最佳答案

直接取自这个(不是我的)站点:

Extending Visual Studio 2010 UML Designers – Part 1: Getting Started

VSSDK Beta 2 错误解决方法

不幸的是,当前的 VSSDK Beta 2 中存在一些我们必须解决的错误。我被告知它们将在更新版本中得到修复,但在那之前,让我带你完成完成这项工作所需的项目清理:

步骤 1 – 调整 .csproj 文件

  • 右键单击您的项目并选择“卸载项目”。
  • 再次右键单击您的项目并选择“编辑您的项目名称.csproj”
  • 在最顶层的属性组中,查找 XML 标记 <IncludeAssemblyInVSIXContainer> .它将被设置为假。将其更改为true。
  • 保存 .csproj 文件并将其重新加载到 Visual Studio。

  • 步骤 2 – 调整 .vsixmanifest 文件
  • 右键单击文件“source.extension.vsixmanifest”并选择查看代码
  • 在文件底部的部分中添加以下行。 (是的,那些竖线很重要。)
    <MefComponent>|Yourprojectname|</MefComponent>
  • 保存并关闭文件。
  • 关于c# - VS 2010 鼠标处理器扩展 - 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1778797/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com