C#富文本框标签

时间:2013-04-19 10:26:46

标签: c# richtextbox

我有一个richtext框,可以从服务器加载文本。从服务器端我想添加格式标签,这将生成文本框。 例如:

result = result.Replace("[b]", @"{\b ").Replace("[/b]", "}").Replace("[br]", @"{\line}").Replace("[i]", @"{\i ").Replace("[/i]", "}");
TextBox1.Rtf = @"{\rtf1\ansi " + result + "}";
然后我可以输入:

Hello [b]this is in bold[/b] and [i] this is in [/i]

因此将替换所需的rtf1 \ ansi格式,并以粗体和斜体显示所需的文本。

我想实现下划线甚至一组颜色。

我已经尝试了{\u underlin },但这似乎不起作用......

1 个答案:

答案 0 :(得分:0)

请看一下我创建的简单示例。将整个文本附加到您的RTF属性。

{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Microsoft Sans Serif;}}
{\colortbl ;\red255\green0\blue0;\red0\green128\blue0;}
This is \cf1 \ulwave\ulc2 underlined \ulnone\cf0 text \par
}

我找不到直接使用RTF属性的非常好的引用,但是有很多示例首先执行选择然后应用所需的属性。我尝试了其中一些示例,然后检查了生成的RTF文本。这是了解Richtextbox如何使用RTF字符串的简单方法。希望这个小技巧也可以帮助你:)。

请注意,在第2行,我放置了一个带有2种颜色的颜色表,即用分号分隔的2个RGB值。你可以在这里添加你想要的颜色,并将它们称为1,2等。我相信0是默认颜色,是白色。