删除完成集

时间:2015-12-07 00:41:08

标签: c# html visual-studio visual-studio-extensions

我正在尝试在VisualStudio IDE中扩展html完成。我将它用于框架,它将html标记与自定义表达式结合起来。我需要添加对这些表达式的支持。问题是,当我实现我的CompletionSource为标记中的自定义元素提供完成时,在completionSets中已经有一个CompletionSet特定HtmlCompletionSet传递了我的CompletionSource的AugmentCompletionSession。我应该在[Order(After = "default")]添加我使用CompletionSourceProvider属性,以确保在html完成后完成。

问题是我不希望在我的自定义元素上显示任何来自html完成的内容。我想摆脱整个HtmlCompletionSet

所以这就是我的尝试:

  1. 填写我自己的完成集
  2. 将我的完成集添加到completionSets
  3. 检查HtmlCompletionSet是否
  4. 如果/更新完成集,则删除HtmlCompletionSet,使其为空
  5. 这导致完成会话消失。我猜它被自动解雇了什么。我该怎么办?有没有优雅的方法来解决这个问题?

1 个答案:

答案 0 :(得分:0)

扩展/修改html完成集的最佳方法是通过IHtmlCompletionListProvider添加新项,或通过IHtmlCompletionListFilter过滤掉现有的完成项。传递给这些接口上的方法的HtmlCompletionContext应该为您提供足够的上下文来确定您需要的内容。