Заменить весь текст в поле расширенного текста
У меня проблема при попытке заменить весь текст, соответствующий определенному слову вrich text box
, Это код, который я использую
public static void ReplaceAll(RichTextBox myRtb, string word, string replacer)
{
int index = 0;
while (index < myRtb.Text.LastIndexOf(word))
{
int location = myRtb.Find(word, index, RichTextBoxFinds.None);
myRtb.Select(location, word.Length);
myRtb.SelectedText = replacer;
index++;
}
MessageBox.Show(index.ToString());
}
private void btnReplaceAll_Click(object sender, EventArgs e)
{
Form1 text = (Form1)Application.OpenForms["Form1"];
ReplaceAll(text.Current, txtFind2.Text, txtReplace.Text);
}
Это работает хорошо, но я заметил небольшую неисправность, когда я пытаюсь заменить букву на себя и другую букву.
Например, я хочу заменить всеe
вWelcome to Nigeria
с .ea
Это то, что я получаю.Weaalcomeaaaaaaa to Nigeaaaaaaaaaaaaaaria
И окно сообщения показывает23
когда есть только триe
, Пожалуйста, что я делаю не так и как я могу это исправить