自动检查文本框长度c#

时间:2014-12-15 17:03:48

标签: c# automation

对于学校的项目,我使用RFID阅读器阅读代码。 RFID阅读器作为键盘呈现在我的电脑上。

程序应该做的是扫描代码,从数据库中获取一些数据并继续。我能做的是扫描代码,然后单击按钮搜索代码。但这不是我想要的。

我想要的是我的c#程序在注意到输入了8个字符(即卡上的代码长度)时会自动搜索数据库,然后返回数据。

我在谷歌上找不到任何东西,所以我想知道是否有人知道如何实现这一目标。

2 个答案:

答案 0 :(得分:2)

您正在寻找TextChanged事件。

写下方法:

protected void textBox1_TextChanged(object sender, EventArgs e)
{
    if(textBox1.Text.Length >= 8)
    {
        // do things
    }
}

然后将其添加为监听器:

textBox1.TextChanged += this.TextBox1_TextChanged;

(如果您正在使用Visual Studio设计器,则可以选择TextBox,转到“属性”窗口,单击“事件”按钮,然后双击TextChanged事件以自动创建和添加方法)

答案 1 :(得分:0)

我想出了使用计时器的想法。也许不是最好的解决方案,但现在可以使用。

在form1_load上,我启动一个计时器,在计时器的事件代码中,我使用if语句来检查文本框的长度。当它是8时,我停止计时器并显示一条消息。

启动Timer的代码:

 private void Form1_Load(object sender, EventArgs e)
    {
        timer1.Start();

    }

我在事件处理程序中执行代码的代码:

private void timer1_Tick(object sender, EventArgs e)
    {
        if (tbScan.Text.Length == 8)
        {
            timer1.Stop();
            MessageBox.Show("8 tekens zijn ingevoerd!");
        }

    }

但也感谢您的回答和评论! ;)