DFens Geschrieben 4. August 2010 Teilen Geschrieben 4. August 2010 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! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
BlackyEXT Geschrieben 4. August 2010 Teilen Geschrieben 4. August 2010 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? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DFens Geschrieben 4. August 2010 Autor Teilen Geschrieben 4. August 2010 Ok, vielen Dank damit komm ich schon mal weiter. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
TDM Geschrieben 5. August 2010 Teilen Geschrieben 5. August 2010 Single ist meines Wissensnach kein int. Folglich float. Außerdem ist das try-parse-catch-Konstrukt nicht gerade ... stilvoll. Single.TryParse Method Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
pintman Geschrieben 5. August 2010 Teilen Geschrieben 5. August 2010 Sehe ich das richtig, dass TryParse im Falle eines Fehlers eine 0 liefert? Wie kann ich dann eine geparste 0 von einem Fehler unterscheiden? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Gateway_man Geschrieben 5. August 2010 Teilen Geschrieben 5. August 2010 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.... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
pintman Geschrieben 5. August 2010 Teilen Geschrieben 5. August 2010 Oh ja, stimmt. Da hatte ich den result-Parameter mit dem Rückgabewert verwechselt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.