Announcement

Collapse
No announcement yet.

C# WPF Verzögerungsverhalten bei Texteingabe per Scan

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • C# WPF Verzögerungsverhalten bei Texteingabe per Scan

    Hi,

    Ich habe eine Anwendung für uns im Lager geschrieben, die seit einigen Monaten einwandfrei läuft.
    Es wird in einem Textfeld ein EAN-Code gescannt und das Programm sucht nach offenen Aufträgen, die mit diesem Artikel abgeschlossen werden können und druckt das Versandlabel aus.

    Seit ein paar Tagen kommt es vor, dass beim Scannen eine Verzögerung stattfindet. Datenbankabfrage schließe ich an der Stelle mal aus, da die Verzögerung nach den ersten 5 bis 7 Zeichen stattfindet und dann nach ca. 8 bis 10 Sekunden erst weiter geht.
    Also beim Scannen werden die ersten Ziffern im Textfeld angezeigt und nach der Verzögerung erst der Rest und das Programm arbeitet flüssig weiter. Das allerdings bei jedem Scan.

    Die Datenbankabfrage führe ich erst durch, wenn im Textfeld die Enter Taste registriert wird. Das habe ich über das KeyUp Event gelöst, weil TextChanged zu Problemen geführt hatte, wenn man das Textfeld verlässt, um andere Dinge einzustellen.
    Der EventHandler sieht so aus:
    Code:
    private void evh_ScanChanged(object sender, KeyEventArgs e)
    {
        TextBox box = (TextBox)sender;
    
        if (string.IsNullOrEmpty(box.Text.Trim()) || e.Key != Key.Enter)
            return;
    
        VossStaticContextHelper.CurrentScannedEAN = box.Text.Trim();
    
        TryProcessing();
        RefreshUI();
    }
    Solange die Box leer ist und kein Enter registriert wurde, passiert also nichts. Erst dann geht es in die Verarbeitung der Eingabe.
    Das ist der Grund, warum ich die Datenbankabfrage ausschließen kann.

    Auf dem TerminalServer werden zeitgleich mehrere Instanzen des Tools verwendet, aber auch andere Programme, die mit Scaneingaben arbeiten. Mein Programm ist das einzige, das beim Scannen dieses Verhalten zeigt.

    Kann ich da was optimieren oder hat jemand eine Idee, woran das liegen kann?
    Ich tippe ja fast schon auf äußere Einflüsse, aber dann frage ich mich, warum das bei den anderen Programmen nicht auftaucht?
    PHP rocks!
    Eine Initiative der PHP Community
Working...
X