在string.empty之后,我不止一次地看到我的字符串的最后一个字符

时间:2014-07-08 19:57:32

标签: textbox barcode

我正在写一个制作程序。因此我正在使用条形码。 我放了一个文本框来读取条形码扫描仪的值。 当文本框长度为8时,我取值并做一些工作。但是当我写这样的时候: textbox1.text =的String.Empty;我再次在文本框中看到最后一个字符。 例如,我通过键盘写入文本框12345678并握住我的手指超过1秒 即使我在字符串上看到了string.empty,如888888。 我该如何解决这个问题?

我的文本框maxlength设置为8,我的代码在下面。

enter code here
if(a<b)
{
 TSCLIB_DLL.openport("TSC TTP-244 Plus");
 TSCLIB_DLL.sendcommand("SIZE 46 mm, 15 mm");
 TSCLIB_DLL.sendcommand("DIRECTION 0,0");
 TSCLIB_DLL.sendcommand("REFERENCE 0,0");
 TSCLIB_DLL.sendcommand("OFFSET 0 mm");
 TSCLIB_DLL.sendcommand("GAP 3 mm");
 TSCLIB_DLL.sendcommand("SPEED 10");
 TSCLIB_DLL.sendcommand("SET PEEL OFF");
 TSCLIB_DLL.sendcommand("SET TEAR ON");
 TSCLIB_DLL.sendcommand("CLS");
 TSCLIB_DLL.sendcommand("CODEPAGE 1254");
 //TSCLIB_DLL.sendcommand("AUTODETECT[120,16]");
 TSCLIB_DLL.clearbuffer();
 string g = "115";
 string h = "150";
 string k = "50";
 string l = "10";
 string serialNumber = b.ToString();
 string boxNumber = lblBoxNumber.Text;
 TSCLIB_DLL.printerfont(h, l, "1", "0", "3", "3", boxNumber );
 TSCLIB_DLL.printerfont(g, k, "1", "0", "2", "2", serialNumber);
 TSCLIB_DLL.printlabel("1", "1");
 TSCLIB_DLL.closeport();
 textBox1.Text =null;
 textBox1.Focus();
 lblBoxNumber.Text = string.Empty;
 }

 if(a==b)
 {...}
 if(a>b)
 {...}

1 个答案:

答案 0 :(得分:0)

好的,因为我看不到你的其余代码我只是要指出最大长度为8的事实,你看到了88888888,我在代码中的其他地方看到你有类似lblBoxNumber的东西.Text + = maxLength。既然你按住了键,也许它就是按键事件处理程序???否则框架中存在严重错误。

我建议您找到对该maxLength的所有引用并关注它们。