如何知道在RichTextBox中是否替换了Text

时间:2012-10-03 06:21:49

标签: c# richtextbox

这是我使用的代码:

Richtextbox.Text = Richtextbox.Text.Replace(ReplaceOldWord, ReplaceNewWord);

我如何知道旧单词是否被新单词替换....

4 个答案:

答案 0 :(得分:2)

第一种方法是检查文字是否改变:

    String text = Richtextbox.Text.Replace(ReplaceOldWord, ReplaceNewWord);
    if(RichTextBox.Text != text)
    {
        Richtextbox.Text = text;
        DoSomething();
    }

第二种是使用TextChanged Event。仅当richtextbox文本更改时,此事件才会生效。

public Form()
{
    InitializeComponent();
    RichTextBox.TextChanged += Richtextbox_TextChanged;
}

private void Richtextbox_TextChanged(object sender, EventArgs e)
{
    DoSomething();
}

答案 1 :(得分:1)

我不确定这个但是如果你有一个文本框,我认为你有GUI,只是尝试在那里打印或使用streamwriter来保存文本文件中的单词。

答案 2 :(得分:1)

如果在替换之前调用String.Contains - 如果它返回true,则在RichTextBox中返回旧单词:

var replaced = Richtextbox.Text.Contains(ReplaceOldWord);

答案 3 :(得分:1)

您可以编写代码:

richTextBox1.Text = richTextBox1.Text.Replace("old", "new");
if (richTextBox1.Text.Contains("old"))
{
  MessageBox.Show("Not replaced");
  //further actions
}