更改RichTextBox中的链接颜色
我有一个RichTextBox,其中包含用户发布的链接。
问题是我的RTB使链接的颜色变黑,背景颜色也变黑。 这导致链接不可见。
如何更改RTB中链接的颜色?
Phoexo:
看看下面的CodeProject文章。 这个人提供了一种在文本中创建任意链接的方法, 而DetectUrls属性设置为false 。 通过少量黑客攻击,您应该完全控制链接的格式。
与RichTextBox中的任意文本链接
http://www.codeproject.com/KB/edit/RichTextBoxLinks.aspx?display=Print
string str = richTextBox1.Text; Regex re = new Regex("^((ht|f)tp(s?)\:\/\/|~/|/)?([\w]+:\w+@)?([a-zA-Z]{1}([\w\-]+\.)+([\w]{2,5}))(:[\d]{1,5})?((/?\w+/)+|/?)(\w+\.[\w]{3,4})?((\?\w+=\w+)?(&\w+=\w+)*)?", RegexOptions.None); MatchCollection mc = re.Matches(str); foreach (Match ma in mc) { richTextBox1.Select(ma.Index, ma.Length); richTextBox1.SelectionColor = Color.Red; }
我不确定如何更改链接的颜色,但您可以更改RTB处理URL的方式。
尝试将DetectUrls属性设置为false。
这样,链接将与RTB文本颜色相同,并且可见。 (虽然不可点击)。
您可以尝试更改RichText本身的格式。 fonttbl关键字允许您执行文本格式。
http://msdn.microsoft.com/en-us/library/aa140277(office.10).aspx