Ich habe eine TextBox
mit einem TextChanged
Ereignis verdrahtet. Am Ende wird eine Abfrage an eine SQL-Datenbank gestellt, daher möchte ich die Anzahl der Abfragen begrenzen.Wie behandelt man das TextChanged-Ereignis nur, wenn der Benutzer mit der Eingabe aufhört?
Ich möchte nur die Abfrage machen, wenn der Benutzer keinen Schlüssel in sagen .. 300 Millisekunden oder so gedrückt hat. Wenn aus irgendeinem Grund die vorherige Abfrage noch ausgeführt wird, müsste ich dies abbrechen und dann eine neue Abfrage ausgeben.
Dies ist die Methode, die ich verwendet habe und es hat perfekt funktioniert. Überraschenderweise bekomme ich keine Ausnahmen, dass die Benutzeroberfläche von einem anderen Thread aktualisiert wird. – esac
Siehe http://msdn.microsoft.com/en-us/magazine/cc164015.aspx#S1. Die kurze Antwort lautet, dass das Ereignis im UI-Thread ausgeführt wird. Was sinnvoll ist, wenn man bedenkt, dass es sich um den Namensraum 'System.Windows.Forms' handelt. – Brian
Beachten Sie, dass der oben genannte Link zum MSDN-Magazin keine direkte Verbindung mehr ist. Sie können weiterhin mit [archive.org] (https://web.archive.org/web/20130219050936/http://msdn.microsoft.com/en-us/magazine/cc164015.aspx) darauf zugreifen. Oder laden Sie einfach das Magazin vom Februar 2004 von dieser Seite herunter. Wenn Sie keinen CHM-Leser haben, können Sie auf den Artikel zugreifen, indem Sie die CHM-Datei mit 7zip extrahieren und '/ MSDNMagazineFebruary2004en-us/TimersinNET/chm.htm' öffnen – Brian