Textfeld auf Zahl überprüfen

Tex_Murphy

Mitglied
Hallo!
Eins vorweg - ich bin blutiger C#-Anfänger, bringe es mir selbst bei und steige gerade von Visaual Basic um.
Jetzt möchte ich überprüfen, ob das, was in ein textfeld eingegeben ist, tatsächlich eine Zahl ist.
in VB konnte ich den Text einfach mit Val in eine Zahl konvertieren, und wenn es eben keine Zahl sondern text war, erhielt ich den Wert 0.
Das Problem ist, daß ich mit den eingegebenen Zahlenb weiterrechnen möchte, und wenn Buchstaben eingegeben werden, gibt es natürlich eine Fehlermeldung.

Ich will auch nicht den Inhalt des Textfensters Zeichen für Zeichen überprüfen oder mittels KeyPress Buchstabeneingabe verhindern
Ist wahrscheinlich völlig simpel, aber als Anfänger tut man sich da gerne mal schwer.
 
Hi,

es gibt einige mögliche Varianten.

Du kansnt zb mit Int32.Parse(txtBox.Text) überprüfen, wenn ein Integer drinnen sein soll. Das gleiche kannst mit einem Double machen. Double.Parse(txtBox.Text) usw.

Vielleicht hilft das mal weiter ... es gibt natürlich sauberere Varianten, aber die sollts auch tun.
 
Norbert Eder hat gesagt.:
Hi,
Du kansnt zb ... Double.Parse(txtBox.Text) usw.
Ja, aber wenn ich doch eine Zeile folgendermassen schreibe:

double SY = Double.Parse(textBox1.Text);

dann kriege ich - wenn ein Buchstabe mit im Textfeld steht eine Fehlermeldung und Programmabbruch. Wie kann ich das denn verhindern... Meine Güte, ist C' kompliziert;)
 
Ich habe die Suchfunktion benutzt, habe aber nach der Umwandlung eines Strings in eine Zahl gesucht, und da nichts brauchbares gefunden.

Trotzdem Danke, es ist zwar immer noch nicht 100%ig das, was ich suche, aber es wird funktionieren. Merci!
 
Hi!

Sorry, aber das war 100%ig das was Du gesucht hast.
Tex_Murphy hat gesagt.:
Jetzt möchte ich überprüfen, ob das, was in ein textfeld eingegeben ist, tatsächlich eine Zahl ist.
in VB konnte ich den Text einfach mit Val in eine Zahl konvertieren, und wenn es eben keine Zahl sondern text war, erhielt ich den Wert 0.
Und? Dann weisst Du immer noch nicht ob keine Zahl drinn war. RegEx heisst das Zauberwort für Zeichenüberprüfung. Und nicht das abschmieren der Konvertierung als Zahlüberprüfung missbrauchen. Das erzeugt einen riesigen Overhead.

MfG cosmo
 
Zurück