Veröffentlicht 4. August 201015 j Hi, bin seit Gestern von VB auf C# umgestiegen, allerdings mit relativ mäßigem Erfolg (bin auch in VB Anfänger ) ... Im Moment scheitert es an der Umsetzung einer einfachen Funktion: Der VB-Quellcode: Private Sub txtBis_Exit() Dim a As Single, b As Single a=txtZahl1 b=txtZahl2 txtErgebnis = Berechne(a, End Sub Function Berechne(x As Single, y As Single) As Single Berechne = x - y End Function [/code] Mein C# [b]Versuch [/b]war: [code] private void txtBis1_Leave(object sender, EventArgs e) { Single a = txtZahl1.Text; Single b = txtZahl2.Text; txtErgebnis.Text = Berechne(a, ; } private Single Berechne(String x, String y) { Berechne = x - y } Kann mir da jemand beim C#-Code helfen? Danke!
4. August 201015 j private void txtBis1_Leave(object sender, EventArgs e) { try { int a = Convert.ToInt32(txtZahl1.Text); } catch { MessageBox.Show("Der Text in txtZahl1 ist keine Zahl!"); } try { int b = Convert.ToInt32(txtZahl2.Text); } catch { MessageBox.Show("Der Text in txtZahl2 ist keine Zahl!"); } txtErgebnis.Text = Berechne(a, .ToString(); } private int Berechne(int x, int y) { return x - y; } Der Text einer Textbox ist vom Typ string. Als erstes wandle ich diesen in eine Zahl (int) um. Sollte dies nicht möglich sein wird eine Meldung ausgegeben. Nachdem die Funktion Berechne die berrechnung durchgeführt hat wird das ergebniss zurückgegeben. Und da der Text der Textbox string sein muss wandlen wir die Zahl nun zurück nach string (mit ToString). Code Ungetestet. Möchtest du dem Nutzer noch die Möglichkeit geben, andere Zahlen als Ganzzahlen eingeben zu können?
5. August 201015 j Single ist meines Wissensnach kein int. Folglich float. Außerdem ist das try-parse-catch-Konstrukt nicht gerade ... stilvoll. Single.TryParse Method
5. August 201015 j Sehe ich das richtig, dass TryParse im Falle eines Fehlers eine 0 liefert? Wie kann ich dann eine geparste 0 von einem Fehler unterscheiden?
5. August 201015 j Ganz einfach in dem du auf den Rückgabewert achtest. Dieser Rückgabewert (nebenbei vom Typ Boolean) sagt aus ob das parsen geklappt hat oder nicht....
5. August 201015 j Oh ja, stimmt. Da hatte ich den result-Parameter mit dem Rückgabewert verwechselt.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.