Scintilla .NET 编辑器。将光标定位在第一条可见行
Scintilla .NET editor. Position cursor at the first visible line
我正在使用 Scintilla .NET 文本编辑器控件 (ScintillaNet.dll) 来显示 SQL。我正在使用以下命令将插入符号光标定位在给定的行号处。在下面的示例中,我将插入符号光标定位在第 102 行(基于 0。网格显示基于 1 的行号。)
scintilla1.GoTo.Line(102); //0 based
我希望视口中的文本显示在屏幕顶部,如下所示,作为第一条可见行
我如何确定如何执行此操作?
更新
这看起来很有希望:
scintilla1.Lines.FirstVisible.Number = targetLineNumber;
但是在执行之后,scintilla1.Lines.FirstVisible.Number
并不总是等于 targetLineNumber
而且我不知道是什么在干扰 it.There 是 [=13= 之后的数百行]行。
Get/Set 第一个可见行适合我 https://www.scintilla.org/ScintillaDoc.html#SCI_SETFIRSTVISIBLELINE
可以先保持光标位置(SCI_GOTOPOS)再设置第一条可见行
我正在使用 Scintilla .NET 文本编辑器控件 (ScintillaNet.dll) 来显示 SQL。我正在使用以下命令将插入符号光标定位在给定的行号处。在下面的示例中,我将插入符号光标定位在第 102 行(基于 0。网格显示基于 1 的行号。)
scintilla1.GoTo.Line(102); //0 based
我希望视口中的文本显示在屏幕顶部,如下所示,作为第一条可见行
我如何确定如何执行此操作?
更新
这看起来很有希望:
scintilla1.Lines.FirstVisible.Number = targetLineNumber;
但是在执行之后,scintilla1.Lines.FirstVisible.Number
并不总是等于 targetLineNumber
而且我不知道是什么在干扰 it.There 是 [=13= 之后的数百行]行。
Get/Set 第一个可见行适合我 https://www.scintilla.org/ScintillaDoc.html#SCI_SETFIRSTVISIBLELINE
可以先保持光标位置(SCI_GOTOPOS)再设置第一条可见行