我有一个Visual Studio扩展,我正在开发。我已经实现了一些错误标记,效果很好。但是,某些错误引用代码中的其他位置。我希望用户可以单击这些位置并被带到那里。ErrorTag 的定义允许将 Object 作为工具提示,这并没有太大的帮助,并且文档似乎非常抗拒这实际上应该是什么。到目前为止,我只能使用字符串作为工具提示。
此外,当用户离开错误文本范围时,错误弹出窗口将被销毁。我需要在用户仍在文本跨度或弹出内容上时保留它。我发现了一个可以控制这种行为的 PopupStyles 枚举,但我不确定如何应用它。我需要使用 DismissOnMouseLeaveTextOrContent 成员来设置适当的行为。
如何实现交互式错误工具提示?
编辑:我发现 UIElement 在这里是一个有效的参数 - 例如,我用标签替换了字符串。撇开一些格式问题不谈,我仍然需要知道如何更改弹出样式。
错误弹出窗口旨在作为静态工具提示,仅此而已。它不应该是交互式的。
PopupStyles 枚举似乎用于 ISpaceReservationManager 和 IToolTipProvider - 与标记 API 根本没有真正的连接。您可以执行的操作是侦听 IWpfTextView.MouseHover 事件,然后使用这些 API 之一触发可与之交互的工具提示。