Entwickler-Ecke
Basistechnologien - sämtliche datentypen in einer Textbox ausgeben
BLR - So 20.12.09 19:42
Titel: sämtliche datentypen in einer Textbox ausgeben
hallo =)
hab angefangen mich mit c# zu beschäftigen und dabei macht mir ein einafch ding kopfschmerzen....
hab festgestellt, dass man in einer textbox nur string ausgeben kann
also mach ich:
C#-Quelltext
1:
| textbox.text = intVariable.ToString(); |
soo...wenn ich nun aber in einer textbox eine ZAHL eingebe um mit ihr weiter rechnen zu können
geht das dann so nicht: intZahl = txtbox.text
ich will einfach ne zahl eingeben, sie in eine integer variable abspeichern um damit rechnen zu können
wie mach ich das in c-sharp???
danke
Moderiert von
Christian S.: C#-Tags hinzugefügt
Christian S. - So 20.12.09 20:09
Hallo und :welcome:!
Wie
ToString eine Umwandlung von etwas in einen String ist, musst Du, bevor Du damit rechnen kannst, einen String auch wieder in eine Zahle umwandeln.
Dazu bietet sich, bei einem Integer-Wert folgendes an:
C#-Quelltext
1: 2: 3: 4: 5:
| int derWert; if (int.TryParse(txtbox.Text, out derWert)) { } |
Diese Funktion funktionert so: Es wird versucht, den Text, den man im ersten Parameter übergibt, in eine Zahl umzuwandeln. Die wird dann in den zweiten Parameter (hier als: derWert) hineingeschrieben, sodass man sie benutzen kann.
Die Funktion hat aber auch noch einen Rückgabewert: der ist true, wenn die Umwandlung erfolgreich war und false, wenn nicht. Den obigen Quelltext kann man also in Sprache so formulieren: "Wenn die Umwandlung von txtbox.Text erfolgreich war, dann benutze den Zahlwert, der nun in 'derWert' drin steht."
Grüße
Christian
BLR - So 20.12.09 21:24
danke dir für deine antwort
also um überhaupt weiterarbeiten zu können muss ich jedesmal so ne if-anweisung schreiben?
ähhmm....wo ist den dieser rückgabewert der funktion zu sehen???(um damit vielleicht noch was zu abzufangen)
Christian S. - So 20.12.09 21:27
Was meinst Du mit "wo der Rückgabewert zu sehen ist". Du benutzt den Rückgabewert wie bei jeder anderen Funktion auch :nixweiss:
jaenicke - So 20.12.09 21:31
BLR hat folgendes geschrieben : |
| ähhmm....wo ist den dieser rückgabewert der funktion zu sehen???(um damit vielleicht noch was zu abzufangen) |
Falls du damit meinst wo der umgewandelte Wert ist:
Der steht in derWert, der Rückgabewert gibt ja wie
Christian schon sagte an, ob die Umwandlung erfolgreich war.
JüTho - So 20.12.09 21:40
Hallo und ebenfalls :welcome:
BLR hat folgendes geschrieben : |
| ähhmm....wo ist den dieser rückgabewert der funktion zu sehen???(um damit vielleicht noch was zu abzufangen) |
Und falls du true/false als Rückgabewert der TryParse-Methode meinst, dann steckt der als Ergebnis in der if-Abfrage.
So etwas ist nämlich nicht üblich:
C#-Quelltext
1:
| if (int.TryParse(txtbox.Text, out derWert) == true) |
Bei if wird geprüft, ob ein Wert true ist; es muss nicht gefragt werden, ob ein Wert, der true ist, gleich true ist. (Mit == bzw. != würde die Abfrage auch unsicher ablaufen, aber das führt jetzt zu weit.)
Übrigens spricht man in C# (.NET allgemein?) einheitlich von Methoden und unterscheidet nicht zwischen Funktionen und Prozeduren.
Als
Zusatzhinweis zur Ausgangsfrage: .NET und C# achten genau auf die verwendeten Datentypen. Wenn unterschiedliche Typen zusammen verwendet werden sollen, muss es mindestens eine implizite Konvertierung geben (z.B. dass jede ganze Zahl auch als Dezimalzahl verarbeitet werden kann), sehr oft wird aber eine explizite Konvertierung benötigt - mit ToString oder as oder (int) oder TryParse oder was es sonst noch gibt.
Gruß Jürgen
BLR - Mo 21.12.09 00:08
danke, es hat geklappt.....
ist mein fehler....
hab eben das mit dem rückgabewert einer funktion verwechselt
also z.b wenn eine funktion verbinden soll und es erfolgreich ist
dann: funktion = true
danke euch =)
es kommen sicherlich noch paar andere fragen dazu^^
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 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!