,当用户在该标识符添一插入符号并选择 快速信息 从 IntelliSense 菜单或悬停在该标识符时,的鼠标光标 IntelliSense 快速信息在源显示有关标识符的信息。 这将导致一个工具提示显示相关标识符的信息。 此信息通常包括标识符类型。 在调试引擎处于活动状态时,此信息可能包括当前值。 调试引擎提供表达式的值,那么,当仅语言服务处理标识符时。
托管包 framework (MPF) 语言服务类提供用于显示 IntelliSense 快速信息 " 工具提示完全支持。 只需提供显示的文本和启用快速信息功能。
显示的文本通过调用与 QuickInfo的分析原因值的 ParseSource 方法分析器获取。 此原因通知该分析器在 ParseRequest 对象指定的位置获取该标识符的类型信息 (以及适合显示在快速信息 " 工具提示)。 ParseRequest 对象是什么传递给 ParseSource 方法。
该分析器必须分析所有到在 ParseRequest 对象的位置为了确保所有标识符的类型。 然后该分析器中分析请求位置必须捕获该标识符。 最后,则分析器必须通过工具提示数据与该标识符到 AuthoringScope 对象,以便对象可以从返回 GetDataTipText 方案的文本。
启用快速信息功能
若要启用快速信息功能,则必须将名为 ProvideLanguageServiceAttribute参数的 CodeSense 和 QuickInfo 。这些属性设置 EnableCodeSense 和 EnableQuickInfo 属性。
实现快速信息功能
ViewFilter 类处理 IntelliSense 快速信息操作。 当 ViewFilter 类获得 QUICKINFO 命令时,类调用与 QuickInfo 分析原因和脱字号位置的 ParseSource 方法,在发送后 QUICKINFO 命令。 ParseSource 方法分析器中快速信息的工具提示必须将分析该源到特定位置在给定位置将分析该标识符确定如何显示。
大多数分析器中分析树执行初始分析整个源文件并将结果存储。 ,当 Check 传递给 ParseSource 方法时,完全分析执行。 其他分析就可以使用分析树获取所需信息。
例如, QuickInfo 的分析原因值可以在源位置找到该标识符和查找它在分析树获取该类型信息。 此类型信息随后传递给 AuthoringScope 类和使用 GetDataTipText 方法返回。