1

我正在为 Visual Studio 编写一个附加组件(按 VSPackage 的格式)。设计的功能之一是:当用户在文本编辑器区域左键单击或按向上或向下键移动到新行时,插件可以捕获此事件然后执行某些操作(类似于“VA Visual Assist 中的 Outline”功能,当您单击新行时,相应的元素将在 VA Outline 工具窗口中突出显示)。

我遇到的问题是:我在 Visual Studio Shell 或其他支持鼠标级事件的 SDK 中找不到任何 API(Envdte80 命名空间提供了一个名为“TextDocumentKeyPressEvents”的事件,可用于键盘级事件)。有人能解决这个问题吗?提前谢谢了:-)

4

1 回答 1

0

在 Visual Studio 可扩展性中没有直接的方法可以做到这一点。但是您可以使用本机 WinAPI(来自 C++ 或 C# 扩展包)来设置全局鼠标挂钩 - 这将使您能够拦截鼠标点击。您可以从可扩展性包中过滤点击、在文本编辑器中获取插入符号位置等。

于 2009-12-29T15:56:39.933 回答