我有一个RichTextBox
,我希望在add some text
的{{1}}中middle
。
例如,我收到了这样的文字:
" FirstText SecondText"
我想在text
之间添加一些文字
我试过"FirstText" and the "SecondText".
并添加到第一个我的额外文本然后添加第二个字符串。它工作但它破坏了我的richTextBox1.SelectionColor split the text to 2 strings
那么如何在不剪切(I got color...).
的情况下添加文本或如何保存所有颜色数据?
答案 0 :(得分:1)
您必须自己找到起始索引:
int index = richTextBox1.Text.IndexOf(" ");
if (index > -1) {
richTextBox1.Select(index, 1);
richTextBox1.SelectedText = " Inserted Text ";
}
答案 1 :(得分:1)
您是否熟悉起始位置和结束位置?你可以简单地做这样的事情
richTextBox1.SelectionStart = index;
richTextBox1.SelectionLength = length;//you need to assign an integer where to start
richTextBox1.SelectedText = "Good";
它将替换您已使用“Good”
一词指定长度的文本中的任何位置答案 2 :(得分:0)
选中post。
您可能需要将 SelectionStart 的值更改为要放置新文本的位置。
如果您需要找到正确的索引,可以使用以下内容:
startIndex = richTextBox1.Find(expressionToFind, 0,
richTextBox1.Text.Length,
RichTextBoxFinds.WholeWord);
希望它有所帮助。