有些时间了个代码生成器,在做UI优化是遇到代码查看的问题。原来用的RichTextBox显示效果不理想不能为关键字着色,在网上找了一圈又问了朋友都没找到合适的,只好自己写个了,好在RichTextBox本身提供了丰富的文本处理。
继承RichTextBox重写Text属性,当然加了个属性是否需要处理关键字有的地方还是不需要的 :),然后在Text的set里加入处理,用Find(key,index,RichTextBoxFinds.WholeWord | RichTextBoxFinds.MatchCase | RichTextBoxFinds.NoHighlight) 找到关键字用SelectionColor进行着色,具体算法就不在这说了 :)
有兴趣的朋友可以下载个测试版看看效果:http://my.6to23.com/samen168/bmw/BusinessModelWorldV1.3_Beta1.rar
或是直接看效果图:http://blog.youkuaiyun.com/images/blog_youkuaiyun.com/samen168/BMWBuilder2005.11.24.JPG