如何获取 Visual Studio 扩展中光标左侧的字符?
How to get the character to the left of cursor in Visual Studio Extension?
我正在尝试获取光标左侧的字符。我有拦截 LineChanged
事件的处理程序。
OnLineChanged(TextPoint startPoint, TextPoint endPoint, int Hint)
我找不到任何内置方法从 TextPoint
s 中获取它。
最好的方法是什么?
此外,有没有办法检查活动 window 是否打开了 IntelliSense window?如果 IntelliSense 打开,我想中止事件处理程序的执行。
获取EnvDTE.TextPoint左边的字符:
string CharacterToTheLeft(EnvDTE.TextPoint p)
{
EnvDTE.EditPoint editPoint = p.CreateEditPoint();
editPoint.CharLeft();
return editPoint.GetText(1);
}
要在当前光标位置从 EnvDTE.TextPoint startPoint:
创建一个编辑点
EnvDTE.TextSelection ts = startPoint.Parent.Selection;
EnvDTE.EditPoint editPoint = ts.ActivePoint.CreateEditPoint();
我正在尝试获取光标左侧的字符。我有拦截 LineChanged
事件的处理程序。
OnLineChanged(TextPoint startPoint, TextPoint endPoint, int Hint)
我找不到任何内置方法从 TextPoint
s 中获取它。
最好的方法是什么?
此外,有没有办法检查活动 window 是否打开了 IntelliSense window?如果 IntelliSense 打开,我想中止事件处理程序的执行。
获取EnvDTE.TextPoint左边的字符:
string CharacterToTheLeft(EnvDTE.TextPoint p)
{
EnvDTE.EditPoint editPoint = p.CreateEditPoint();
editPoint.CharLeft();
return editPoint.GetText(1);
}
要在当前光标位置从 EnvDTE.TextPoint startPoint:
创建一个编辑点 EnvDTE.TextSelection ts = startPoint.Parent.Selection;
EnvDTE.EditPoint editPoint = ts.ActivePoint.CreateEditPoint();