繁体   English   中英

C#-按下按键时从字符串中删除最后一个字符

[英]C# - Remove last character from string on keydown

如果按下后退键,我现在正在使用它来删除字符串的最后一个字符,但是,如果我按住该键,则不是从字符串中删除字符,而其余条件可以很好地将字符添加到字符串。 我想Remove函数在某种循环中不能很好地工作。

if (key == Keys.Back)
{
    if (text.Length > 0)
    {
        text.Remove(text.Length - 1);
    }
}

更新 :我以为是要删除按键上的字符,但没有。 感谢您提供此愚蠢错误的答案。

Remove方法不会修改text 它返回一个新字符串,您需要将其分配回textBox (或text ,如果要操作text变量):

textBox1.Text = text.Remove(text.Length - 1);

字符串不可变的 ,因此Remove方法将返回一个新字符串。 它不会修改现有的字符串。 要查看更改,请将结果分配回您的text变量。

text = text.Remove(text.Length - 1);

它正在工作,替换为:

text = text.Remove(text.Length - 1);

也许我也能像其他人一样发表相同的答案-.-

text = text.Remove(text.Length - 1);

暂无
暂无

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

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