【发布时间】:2015-07-08 15:31:32
【问题描述】:
我正在尝试遍历 Richtextbox 中的一些预先输入的文本,并将特定单词/行的颜色更改为取决于它们的前缀的颜色,到目前为止,不同的前缀是 [b]、[f] 和[e]。在这个例子中,我只使用 [b]。我试过使用 while/foreach 循环,但它们似乎没有遍历文本。下面是我最接近让它工作的方法,但它只适用于第一行文本。有人能指出我正确的方向吗?
private void AboutBox_Load(object sender, EventArgs e)
{
textBox1.Select(0, 0);
using (StringReader reader = new StringReader(richTextBox1.Text))
{
string line = string.Empty;
do
{
line = reader.ReadLine();
if ((line != null && line.Contains("[b]")))
{
richTextBox1.Select(richTextBox1.Text.IndexOf("[b]"), "[b]".Length);
richTextBox1.SelectionColor = Color.Green;
}
} while (line != null);
}
}
【问题讨论】:
标签: c# richtextbox