我想在丰富的编辑控件中搜索单词。我将在文本框中输入一个单词,然后单击一个名为“搜索”按钮的按钮,然后将在丰富的编辑控件中突出显示搜索到的单词。
我该如何解决这个问题?
在富文本框中,我们使用RichTextBox.TextLength
,但富编辑控件不支持此功能。
private void button2_Click(object sender, EventArgs e) //Search button
{
int index = 0;
while(index <= richEditControl1.Text.LastIndexOf(textBox1.Text))
{
richEditControl1.Find(textBox1.Text, index, richEditControl1.TextLength, RichTextBoxFinds.None);
richEditControl1.SelectionBackColor = Color.IndianRed;
index = richEditControl1.Text.IndexOf(textBox1.Text, index) + 1;
}
}
答案 0 :(得分:0)
尝试使用StartSearch方法。像这样的东西。
private void SearchRTF(string mytext) {
var result = myRichEditControl.Document.StartSearch(mytext);
if (result.FindNext()) {
var section = myRichEditControl.Document.BeginUpdateCharacters(result.CurrentResult);
section.ForeColor = System.Drawing.Color.White;
section.BackColor = System.Drawing.Color.Blue;
myRichEditControl.Document.EndUpdateCharacters(section);
}
}