簡體   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