从文本框更新更改替换字符文本框c#

本文关键字:文本 字符 替换 更新 | 更新日期: 2023-09-27 18:28:14

我有一个文本框,点击按钮可以在其中查找和替换内容,但它不会更改文本框本身。以下是我用来根据需要更改某些内容的代码:

private void button2_Click_1(object sender, EventArgs e)
{
    var abc = textBox1.Text.Between("abc", "&");
    var def = textBox1.Text.Between("def", "&");
    var ghi = textBox1.Text.Between("ghi", "&");
    var jkl = textBox1.Text.Between("jkl", "&");
    var test = abc.Replace("" + abc + "", "any");
    var test1 = def.Replace("" + def + "", "any");
    var test2 = ghi.Replace("" + ghi + "", "any");
    var test3 = jkl.Replace("" + jkl + "", "any");
}

现在我把它和一个按钮一起使用,但当我启动按钮时,它不会改变我的文本框中的任何内容。

我一直在谷歌上搜索,发现了this.textBox1.Refresh();但这也没有改变任何事情。

所有的帮助都会很棒,提前谢谢。。

从文本框更新更改替换字符文本框c#

您必须将更改后的string分配回您的textBox1。像这样的东西。

编辑:假设你所说的中间是这个

private string findBetweenMethod(string text, string start, string end){
    string betweenText = text;
    .... //process
    return betweenText;
}
private void button2_Click_1(object sender, EventArgs e)
{
    var abc = findBetweenMethod(textBox1.Text,"abc", "&"); //find what to change
    textBox1.Text = textBox1.Text.Replace(abc, "any"); //change it, assign it back to the textBox1
    var def = findBetweenMethod(textBox1.Text,"def", "&"); 
    textBox1.Text = textBox1.Text.Replace(def, "any");
    var ghi = findBetweenMethod(textBox1.Text,"ghi", "&"); 
    textBox1.Text = textBox1.Text.Replace(ghi, "any");
    var jkl = findBetweenMethod(textBox1.Text,"jkl", "&"); 
    textBox1.Text = textBox1.Text.Replace(jkl, "any");
}

注意:不过要注意你的文本模式。上面的方法是假设干净、奇异的模式。也就是说,你真正想要的是介于"abc"answers"&"之间(依此类推),除了预期的模式之外,其他地方没有重复这种模式。

但这里的基本思想是将更改后的string分配回textBox1,正如@sharpstudent和其他

所解释的那样