Zastąp cały tekst w bogatym polu tekstowym
Mam problem podczas próby zastąpienia całego tekstu pasującego do konkretnego słowa wrich text box
. To jest kod, którego używam
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);
}
To działa dobrze, ale zauważyłem małą usterkę, gdy próbuję zastąpić list samym sobą i inną literą.
Na przykład chcę zastąpić wszystkiee
wWelcome to Nigeria
zea
.
To właśnie dostajęWeaalcomeaaaaaaa to Nigeaaaaaaaaaaaaaaria
.
I okno wiadomości pokazuje23
kiedy są tylko trzye
. Pls co robię źle i jak mogę to poprawić