在RichtextBox中加粗

Ska*_*ami 3 c# fonts richtextbox winforms

我一直在研究我的richtextbox,但是我遇到了一些奇怪的事情......我想在每行粗线上创建第一个单词

使用此代码:

        RichTextBox bold = richTextBox1;
        foreach (string line in bold.Lines)
        {
            string name = line.Split(' ')[0];
            int srt = bold.Find(name);
            bold.Select(srt, name.Length);
            bold.SelectionFont = new Font(bold.Font, FontStyle.Bold);
        } 
Run Code Online (Sandbox Code Playgroud)

但由于某种原因,一些行被跳过.从我注意到它取决于行开头的单词

例如Name:被跳过但是Name1:很好,ProcessId,VirtualSize和WorkingSetSize也是如此.

示例http://i40.tinypic.com/4lov91.png

如果需要更多解释,请告诉我.

这些行添加如下

richTextBox1.Text += "Name: "+ queryObj["Name"] + Environment.NewLine;
Run Code Online (Sandbox Code Playgroud)

在将所有内容添加到richtextbox之后调用使所有第一个单词变为粗体的函数.

Kei*_*ler 10

这条线......

int srt = bold.Find(name);
Run Code Online (Sandbox Code Playgroud)

...正在寻找开始该行的单词的第一次出现.如果您查看未设置为粗体的单词,那么您将看到它们都在富文本框中更早出现.