我正在使用条形码扫描模块在c#中使用桌面应用程序。问题是每当我扫描条形码时,应用程序都会停止显示Messageboxes。应用程序不会抛出任何异常,它只是执行代码。
应用程序在扫描条形码之前完美运行。
我不知道为什么会这样,我该怎么解决它。
这是我的代码:
if (string.IsNullOrEmpty(BarcodeScan) && e.KeyChar.ToString() == "*")
BarcodeScan = e.KeyChar.ToString();
else if (Regex.IsMatch(BarcodeScan + e.KeyChar.ToString(), @"^[*]\d+$"))
BarcodeScan += e.KeyChar.ToString();
else if (Regex.IsMatch(BarcodeScan + e.KeyChar.ToString(), @"^[*]\d+[*]$"))
{
BarcodeScan += e.KeyChar.ToString();
ArticalID = BarcodeScan.Substring(1, BarcodeScan.Length - 2);
//Code to find article in DB
ArticalID = string.Empty;
BarcodeScan = string.Empty;
}
else
{
if (BarcodeScan.StartsWith("*"))
{
BarcodeScan = string.Empty;
}
}
答案 0 :(得分:3)
据我了解你的问题:条形码扫描器最后发送扫描的数字/字符,最后输入“Enter”。也许那个输入通过调用默认按钮来关闭你的MessageBox。