这篇文章主要给大家介绍了.NET中用ICSharpCode.TextEditor自定义代码折叠与高亮的相关资料,文中通过示例代码与图片介绍的很详细,需要的朋友可以参考借鉴,下面来一起看看吧。
前言
ICSharpCode.TextEditor
是一款非常不错的.NET代码编辑控件,内置了多种高亮语言支持,同时完美支持中文,非常赞!
先来看一下运行效果:
一、项目结构
这里需要注意lib文件夹下导入的类库,这个Demo需要这些dll.
二、代码折叠
需要实现IFoldingStrategy中的 GenerateFoldMarkers 方法,代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
|
三、高亮配置
拷贝CSharp-Mode.xshd为 JackCSharp-Mode.xshd ,将其中的名字修改为: SyntaxDefinition name = "JackC#"
,并添加高亮关键字,如下:
这样代码中出现的JackWang就会高亮。下面的代码片段将自定义高亮文件进行加载,并用SetHighlighting进行设置,这里一定注意目录下必须有xshd的配置文件,否则高亮将失效。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
为了保持代码适时进行折叠,这里监听文本变化,如下所示:
1 2 3 4 5 |
|
最后说明的是,我们可以定义一个格式化代码的类,来格式化C#代码:
总结
【相关推荐】
2. ASP.NET教程
위 내용은 .NET 코드 편집 컨트롤(ICSharpCode.TextEditor)에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!