如何使文本框更改事件保持到长度为10

时间:2012-06-11 20:39:35

标签: c# events textbox

当文本框中的文本数量等于10时,满足什么条件?目前,该事件在每次按键时都会触发。

  private void textBox1_TextChanged(object sender, EventArgs e)
  {
           if(textbox1.Length == 10)
             {
             }

  }

3 个答案:

答案 0 :(得分:3)

  

我尝试了这个并且它无法正常工作,因为每次按下键盘上的按钮都会触发此事件。

那没关系。您的代码甚至无法编译,因为TextBox没有属性Length,但它有一个Text属性,string,其Length } property。

请注意,还有其他方法可以更改文本(即粘贴文本),这只会触发TextChanged一次。另外要小心,因为如果用户按下退格键或删除键,您可能不想触发该代码。在像这样的文本框中执行操作通常比预期的要复杂一些。

答案 1 :(得分:1)

你在那里99%,你错过了Text属性。

if(textbox1.Text.Length == 10)
{
}

答案 2 :(得分:0)

private void textBox1_TextChanged(object sender, EventArgs e)
    {
        if (textBox1.TextLength==10)
        {
            //read DB and display stuff
            textBox1.Clear();
        }
    }

就像其他回答者一样,我很好奇,因为你现在的代码甚至都不会编译。如果您在VS 2010/2012中编写它,自动完成应该已经提供了TextLength