我正在写一个制作程序。因此我正在使用条形码。 我放了一个文本框来读取条形码扫描仪的值。 当文本框长度为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)
{...}
答案 0 :(得分:0)
好的,因为我看不到你的其余代码我只是要指出最大长度为8的事实,你看到了88888888,我在代码中的其他地方看到你有类似lblBoxNumber的东西.Text + = maxLength。既然你按住了键,也许它就是按键事件处理程序???否则框架中存在严重错误。
我建议您找到对该maxLength的所有引用并关注它们。