其他分享
首页 > 其他分享> > CodeGo.net>如何隐藏ScintillaNET的第一行?

CodeGo.net>如何隐藏ScintillaNET的第一行?

作者:互联网

有一个ScintillaNET控件,我可以隐藏第2行

scintilla.Text = "Line 1\r\nLine 2\r\nLine 3";
scintilla.HideLines(1,1);

或第2和3行

scintilla.Text = "Line 1\r\nLine 2\r\nLine 3";
scintilla.HideLines(1,2);

但没有任何内容会从第1行(索引0)开始

scintilla.Text = "Line 1\r\nLine 2\r\nLine 3";
scintilla.HideLines(0,2);

如何在ScintillaNET中隐藏文本的第一行?

我的文件格式的第1行是由编辑器编写的,用户绝不能对其进行编辑,因此我希望根本不显示它.

解决方法:

我认为HideLines并不是这项工作的正确工具,因为它是Scintilla的folding API的一部分.styling API可能更合适.

但是,我怀疑任何API本身是否真的可以防止用户编辑隐藏文本.例如,这将需要附加的处理来停止用户删除恰好包含隐藏部分的文本块(无论如何,对于折叠式API确实如此).

但是,对于您的特定情况,是否有更简单的解决方案?为什么不先将文本的第一行删除,然后再将其加载到编辑器中(并在保存之前将其重新添加)?

标签:scintilla,c
来源: https://codeday.me/bug/20191120/2041023.html