Entwickler-Ecke
Basistechnologien - String aus Textbox Lesen und in Double Convertieren
derjonny - Do 15.04.10 10:43
Titel: String aus Textbox Lesen und in Double Convertieren
Hallo ihr lieben. Ich hoffe ich bin im richtigen Abschnitt des Forums...:D
Habe da wiedereinmal eine Frage.
Ich habe eine Textbox aus der möchte ich die Zahlen auslesen die eingegeben werden, diese sollen dann in Double Convertiert werden.
Könnt ihr mir einen Tipp geben was ich falsch mache?
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| if (chBWied1.Checked == true) { double Spannung1 = 0; double Strom1 = 0; double Ergebniss1 = 0; Console.ReadLine(textBoxSpann1.Text = Convert.ToString(Spannung1));
Ergebniss1 = Spannung1 / Strom1; Console.Write(textBoxErgebniss.Text = Convert.ToString(Ergebniss1));
} |
danielf - Do 15.04.10 10:49
Hallo,
jeder primitive Datentyp bietet dir in .NET die Funktion Parse und TryParse. Den Allgemeinen Converter (Convert) hast du ja bereits im Einsatz. Dieser ist so allerdings nicht notwendig, da jedes Object eine ToString-Methode hat.
C#-Quelltext
1: 2:
| double d = double.Parse(textBoxSpann1.Text); |
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| double d ; if (double.TryParse(textBoxSpann1.Text, out d)) { } else { }; |
Gruß Daniel
Edit:
Willst du nun Werte von der textBox oder der Console einlesen?
C#-Quelltext
1: 2: 3: 4: 5: 6:
| double spannung = double.Parse(textBoxSpann1.Text); double strom = double.Parse(textBoxStrom1.Text);
double widerstand = spannung / strom;
textBoxErgebinsse.Text = widerstand .ToString(); |
AUch will ich dir bei der Eingabe von Zahlen auf die MaskedTextBox bzw. NumericUpDown-Control raten. Damit brauchst du später den Typ nicht mehr überprüfen (TryParse) ... dann wird der Code übersichtlicher und der Benutzer bekommt gleich bei der Eingabe einen auf den Deckel ;)
derjonny - Do 15.04.10 11:01
:D ähhmmm ja also ich bin noch völliger anfänger muss eine Projektarbeit in der Berufschulemachen.:(
ich möchte den wert von der Textbox einlesen, und dann ausrechnen lassen und in eine andere textbox eingeben lassen.
derjonny - Do 15.04.10 13:28
Supi ich danke dir hat mir geholfen habe es jetzt ausprobiert uns auch so angewendet...:D
macht spaß hier weil ich immer schnell und hilfreiche antworten bekomme
:D
LG
JüTho - Do 15.04.10 13:33
Dann vergiss die Console; Daniel hat ja die richtigen Wege gezeigt.
Übrigens solltest du die Verschachtelung von Zuweisungen vermeiden. Beispiel:
C#-Quelltext
1:
| Console.ReadLine(textBoxSpann1.Text = Convert.ToString(Spannung1)); |
Selbst wenn das ginge (ReadLine arbeitet ohne Argumente), wäre es umständlich und zumindest fehleranfällig: Zuerst wird Spannung1 zu einem String gemacht, dieser wird der TextBox zugewiesen, das Ergebnis dieser Zuweisung wird an ReadLine übergeben. Wer blickt da noch durch, welcher Wert zu welchem Zeitpunkt gültig ist.
Aber du willst sowieso den Wert der Spannung als Text an die TextBox geben und nicht an die Console.
Du musst sowieso genau aufpassen, was du machst und was du bearbeitest. .NET und damit C# achten genau auf die Typen. Mit ReadLine wird eine Zeile gelesen; die liefert ein bestimmtes Ergebnis. Willst du etwa das machen?
Genaues Nachdenken vermeidet Umwege und Fehler. Jürgen
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!