1
我正在使用條形碼閱讀器從產品中獲取條形碼。 我在文本框中獲取代碼。我把textchanged事件放在那個文本框上。 但問題是,當條形碼將其值(例如,如果條形碼是5位數字),則textchanged事件被激發五次。 如何獲得這件事的騎?如何從條形碼閱讀器使用textChanged事件
我正在使用條形碼閱讀器從產品中獲取條形碼。 我在文本框中獲取代碼。我把textchanged事件放在那個文本框上。 但問題是,當條形碼將其值(例如,如果條形碼是5位數字),則textchanged事件被激發五次。 如何獲得這件事的騎?如何從條形碼閱讀器使用textChanged事件
您應該能夠編程您的條形碼讀取器以輸出前綴字符和後綴字符(掃描值之前的一個輸出和之後的一個輸出)。假設您將其設置爲在掃描數據值之前輸出星號(*),然後輸出回車符(CR)。附加一個處理程序的TextBox.PreviewTextInput
Event,聽出了星號字符:
private void PreviewTextInput(object sender, TextCompositionEventArgs e)
{
if (e.Text == "*")
{
e.Handled = true;
// Data input has started
}
}
您可以使用此彈出一條信息:「掃描...」,或者其他任何你需要。接下來,附加一個處理程序的TextBox.KeyUp
Event,聽出了輸入鍵:
private void KeyUp(object sender, KeyEventArgs e)
{
if (e.Key == Key.Return)
{
string scannedValue = ScanTextBox.Text.Replace("*", string.Empty);
// Do something with scannedValue
}
}
現在scannedValue
變量應包含掃描的條形碼值。
將條形碼閱讀器郵戳設置爲「Cr」。處理'KeyPress'事件。然後如果'e.KeyChar = ChrW(13)'設置'e.Handled = True'。 – 2014-10-03 07:12:58