时间:2021-05-20
本文实例讲述了C#使用RichTextBox实现替换文字及改变字体颜色功能。分享给大家供大家参考,具体如下:
替换文字
private void GenerateEntity(){ try { string result = ChangeWords("specific content..."); txtContent.Text = result; ChangeColor(); } catch (Exception ex) { MessageBox.Show("类生成失败!错误信息:" + ex.Message); }}private string ChangeWords(string content){ //先替换"nvarchar"、"varchar"、"nchar",再替换"char" //不然"nvarchar"、"varchar"、"nchar"就会被替换为 //nvarstring"、"varstring"、"nstring"不能进行原有规则替换 string result = Regex.Replace(content, "nvarchar", "string"); //进行下一步替换的时一定要以上一步替换的返回结果为数据源而不是content //因为content值没有改变 result = Regex.Replace(result, "varchar", "string"); result = Regex.Replace(result, "nchar", "string"); result = Regex.Replace(result, "char", "string"); result = Regex.Replace(result, "tinyint", "int"); result = Regex.Replace(result, "smallint", "int"); result = Regex.Replace(result, "bigint", "int"); result = Regex.Replace(result, "datetime", "DateTime"); return result;}改变字体颜色
要改变字体颜色一定要使用RichTextBox,普通的文本框不能实现为某些特殊文字添加颜色的功能。
private void ChangeColor(){ txtContent.SelectionStart = 0; txtContent.SelectionLength = txtContent.Text.Length; txtContent.SelectionColor = Color.Black; //列注释不为空时,改变列注释颜色 if (listDescription.Count > 0) { ChangeKeyColor(listDescription, Color.Green); } ChangeKeyColor("namespace", Color.Blue); ChangeKeyColor("public", Color.Blue); ChangeKeyColor("class", Color.Blue); ChangeKeyColor("/// <summary>",Color.Gray); ChangeKeyColor("///", Color.Gray); ChangeKeyColor("/// </summary>", Color.Gray); ChangeKeyColor("int", Color.Blue); ChangeKeyColor("double", Color.Blue); ChangeKeyColor("float", Color.Blue); ChangeKeyColor("char", Color.Blue); ChangeKeyColor("string", Color.Blue); ChangeKeyColor("bool", Color.Blue); ChangeKeyColor("decimal", Color.Blue); ChangeKeyColor("enum", Color.Blue); ChangeKeyColor("const", Color.Blue); ChangeKeyColor("struct", Color.Blue); ChangeKeyColor("DateTime", Color.CadetBlue); ChangeKeyColor("get",Color.Blue); ChangeKeyColor("set", Color.Blue);}public void ChangeKeyColor(string key, Color color){ Regex regex = new Regex(key); //找出内容中所有的要替换的关键字 MatchCollection collection = regex.Matches(txtContent.Text); //对所有的要替换颜色的关键字逐个替换颜色 foreach (Match match in collection) { //开始位置、长度、颜色缺一不可 txtContent.SelectionStart = match.Index; txtContent.SelectionLength = key.Length; txtContent.SelectionColor = color; }}public void ChangeKeyColor(List<string> list, Color color){ foreach (string str in list) { ChangeKeyColor(str, color); }}更多关于C#相关内容感兴趣的读者可查看本站专题:《C#常见控件用法教程》、《C#窗体操作技巧汇总》、《C#数据结构与算法教程》、《C#面向对象程序设计入门教程》及《C#程序设计之线程使用技巧总结》
希望本文所述对大家C#程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了C#在RichTextBox中显示不同颜色文字的方法。分享给大家供大家参考。具体实现方法如下:#region日志记录、支持其他线程访问public
Dreamweaver怎么替换文字,我们使用Dreamweaver时候里面有大量的文字需要替换成别的文字,我们怎么使用Dreamweaver替换功能呢。软件名称
我们在使用Word2010编辑文档的过程中,常常需要将文档中某些文字替换成另外的文字,那么Word中如何替换文字?下面小编就为word替换文字方法介绍,来看看吧
使用Word2010的查找和替换功能,不仅可以查找和替换字符,还可以查找和替换字符格式(例如查找或替换字体、字号、字体颜色等格式),么Word如何使用查找替换呢
本文实例讲述了C#实现winform中RichTextBox在指定光标位置插入图片的方法。分享给大家供大家参考,具体如下://获取RichTextBox控件中鼠