繁体   English   中英

文本框 在 vb.net 或 c# 中插入和删除 function

[英]textbox Insert and remove function in vb.net or c#

如何更新TextBox控件中的文本?

考虑一个已经包含字符串“Wel”的TextBox

要在TextBox中插入文本,我使用:

   TextBox1.Text = TextBox1.Text.Insert(3, "come")

并从TextBox中删除字符:

    TextBox1.Text = TextBox1.Text.Remove(3, 4)

但我需要能够做到这一点:

    TextBox1.Text.Insert(3, "come");
    TextBox1.Text.Remove(3, 4);

但是,此代码不会更新TextBox

这可能吗?

这可以通过 append 方法完成吗?

TextBox 的Text属性是字符串类型,它是不可变的,无法更改现有字符串。 Insert()Remove()返回一个带有修改的新字符串实例,您必须将这个新实例分配回 TextBox 的 Text 属性。

您可能对TextBox.AppendText()感兴趣。它会将文本附加到字符串的末尾,但您不能对它执行诸如Insert()Remove()之类的操作。

编辑:

对于你的按键,你可以做这样的事情

        char charToReplace = (char) (e.KeyChar + 1);    // substitute replacement char
        textBox1.SelectedText = new string(charToReplace,1);
        e.Handled = true;

'string'是不可变类型,因此每次字符串值更改时都会分配新的 memory。 因此,如果要从TextBox插入或删除文本,则必须将其分配回TextBox.Text属性。 但是,如果您只想将 append 文本发送到TextBox.Text ,您可以这样做

textBox.AppendText("Hello");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM