gpt4 book ai didi

c# - 从 VS2008 VSPackage,我如何在插入符号位置发生变化时得到通知?

转载 作者:太空狗 更新时间:2023-10-29 21:58:21 27 4
gpt4 key购买 nike

每当事件 TextView 中的插入符号位置发生变化时,我都希望得到通知。 EnvDTE 似乎唯一提供的是 the LineChanged event ,当然在同一行内向左或向右移动插入符号时不会引发。

我知道 VS2010 的编辑器可扩展性让您可以毫不费力地做到这一点,但我需要一个向后兼容 VS2008 的解决方案。

最佳答案

你见过这个吗:DTE2 events don't fire

您必须保留 Events 对象的本地实例,否则事件不会触发(我假设是因为 COM 支持的 Events 对象超出范围并被 GC'd):

public class MyVSPackage
{
TextEditorEvents _textEditorEvents;

public MyVSPackage()
{
_textEditorEvents = DTE.Events.TextEditorEvents;

_textEditorEvents.LineChanged += (point, endPoint, hint) => //Do something here
}
}

关于c# - 从 VS2008 VSPackage,我如何在插入符号位置发生变化时得到通知?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16557923/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com