如果按下后退键,我现在正在使用它删除字符串的最后一个字符,但是如果我按住键就不能从字符串中删除字符,而其余的条件工作正常添加字符串的字符。我认为删除功能在某种循环中效果不佳。
if (key == Keys.Back)
{
if (text.Length > 0)
{
text.Remove(text.Length - 1);
}
}
更新:我认为它是在按键时删除字符,但是它没有。感谢您回答这个愚蠢的错误。
答案 0 :(得分:3)
Remove
方法不会修改text
。它会返回一个新字符串,如果您想操纵textBox
变量,则需要将其分配回text
(或text
):
textBox1.Text = text.Remove(text.Length - 1);
答案 1 :(得分:2)
strings为immutable ,因此方法Remove
会返回一个新字符串。它不会修改现有的字符串。要查看更改,请将结果分配回text
变量。
text = text.Remove(text.Length - 1);
答案 2 :(得分:1)
它正在工作,替换为:
text = text.Remove(text.Length - 1);
答案 3 :(得分:0)
也许我也得到了像其他人一样发布相同答案的upvote -.-
text = text.Remove(text.Length - 1);