C#使用RichTextBox实现替换文字及改变字体颜色功能示例
2019-03-31 21:37
363 查看
本文实例讲述了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#程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- C# 中代码Dialog控件实现(打开,保存,改变字体,颜色,打印功能)
- RichTextBox替换文字并改变字体颜色
- 图形的绘制,如何使用自定义画笔(颜色,线宽,线形)。如何为程序中添加选项菜单和选项设置对话框,如何使用标准颜色对话框,如何使用字体对话框,在选项对话框中实现预览功能。实现选项对话框和窗口类中的数据交换。如何改变对话框和控件的背景色,如何改变控件的文本颜色,
- c#实现打印功能,可以设置纸张大小,字体和颜色等
- c#实现打印功能,可以设置纸张大小,字体和颜色等
- 【转】C# 实现完整功能的截图控件(2)-实现颜色和字体选择控件
- php使用自定义函数实现汉字分割替换功能示例
- java实现记事本基本功能:新建、打开、保存、另存为、退出、替换、全部替换、复制、剪切、粘贴、全选、获取当前时间日期、修改字体、颜色、自动换行等
- 利用C#中ToolStirp中的ComboBox控件实现下拉菜单改变文档字体的功能
- C#中代码Dialog控件实现(打开,保存,改变字体,颜色,打印功能)
- android textview改变部分文字的颜色和string.xml中文字的替换及部分内容设置颜色、字体、超链接、图片
- richtextbox中如何实现下面这段文字的字体颜色设置?
- C#中代码Dialog控件实现(打开,保存,改变字体,颜色,打印功能)
- C# 图片添加旋转字体文字,实现图片装逼功能
- (二)C#使用DsoFramer操作Excel实现查找、替换的功能
- android 同意协议、服务等,一行文字中掺杂关于其他颜色字体。同时实现超链接点击跳转等功能.
- C#使用DES和AES实现加密解密功能示例
- Android点击文字编辑进行缩放、移动和改变字体、颜色的实现
- C#使用FileSystemWatcher控件实现的文件监控功能示例
- android中自定义view---实现竖直方向的文字功能,文字方向朝上,同时提供接口,判断当前touch的是哪个字符,并改变颜色