如何挂钩 Visual Studio IntelliSense 完成键以在触发时更改

How to hook into the Visual Studio IntelliSense completion keys to change when it triggers

Visual Studio 当我在 2015 年的 C# 中按 Enter 或 Tab 键时,2015 2015 无法仅 select IntelliSense。它适用于 JavaScript 但不适用于 C#。

我正在尝试创建一个 MEF 项目并连接到 IntelliSense 以更改 C# 文件的此行为。刚开始时,我尝试从 Microsoft 实施这个示例插件: https://msdn.microsoft.com/en-us/library/ee372314.aspx

示例可以编译,但无法运行。调试的 IDE 不会触发代码中的任何内容。示例告诉我们开始一个新的文本文件并按 "a" 以获得演示 IntelliSense,但它永远不会触发。

下面是代码项目,如果有人想查看的话: http://ontime.zdata.no/donwload/ProperIntellisense.zip

有人可以在这里指导我正确的方向吗,这方面的文档非常流畅。

没有受支持的方法来使用 API 来自定义它。您要更改的行为属于 Roslyn project on GitHub,因此非常欢迎您在那里提交错误作为反馈。也欢迎您发送拉取请求,但此时更改 Roslyn 的编辑器组件并将其应用到本地安装的 Visual Studio 确实很棘手。这是我们正在努力解决的问题,但尚未完成。

解决方法是在编辑器中按 Ctrl+Alt+Space。这将切换到正确的 IntelliSense 行为。不是一件容易找到的事情,但它节省了我的时间。他们可能应该提供有关此切换功能的更好信息,并使其更可见。但是,关闭 IDE 后不会记住它,因此每次启动 IDE 时都必须这样做.