希望这是一个有效的问题:Intellisense在VS2008中是如何工作的?我想知道它用于查找建议的算法,它什么时候弹出("."只是一个明显的触发器),如果可能的话,如何修改其行为等等。
为了将这个问题放入背景中:我试图解决的主要问题是如何在编辑器屏幕的部分中启用和禁用intellisense,以及如何修改它搜索以填充建议框的位置。
欢迎提供所有信息。
希望这是一个有效的问题:Intellisense在VS2008中是如何工作的?我想知道它用于查找建议的算法,它什么时候弹出("."只是一个明显的触发器),如果可能的话,如何修改其行为等等。
为了将这个问题放入背景中:我试图解决的主要问题是如何在编辑器屏幕的部分中启用和禁用intellisense,以及如何修改它搜索以填充建议框的位置。
欢迎提供所有信息。
这个问题太宽泛了。由于VS IDE支持多种不同的语言,而且有N种DSL和IDE增强功能,支持可选的Intellisense,这意味着会有很多答案。如果你指的是特定的C#语言,那么请参见工具 | 选项 | 文本编辑器 | C# | Intellisense区域,以查看可用的完成选项。至于使用的算法,您需要查找程序集元数据、大量缓存类型成员、特定类型的上一个成员的MRU列表等。如果您有更具体的问题,请说明。
查看DSL(ironpython)的示例及其实现here。
我在VS中没有看到任何限制IntelliSense出现位置的文本编辑器。这完全取决于语言。如果您的光标位于IntelliSense可能对有效令牌有所贡献的位置,那么它将被使用。
我相信与正在使用的项目系统有一些交互,但就我所知,只有这些。我还相信Visual Studio SDK中有一个示例项目系统,这可能会给您一个想法。