[C#] MaskedTextBox Werte auslesen

Hallo Ihr!
Ich habe das Forum durchsucht um rauszufinden wie man aus einer MaskedTextBox den vom Benutzer eingebenen Wert ausliest (es sind nur Zahlen zulässig- kann man mit diesem Steuerelement relativ gut umsetzen) und weiterverwendet (damit rechnet). Oder geht das nur mit einer Textbox? (hierzu habe ich wirklich viele Beispiele gefunden- jedoch hab ich diese nicht wirklich umgesetzt bekommen).Ich bin noch Anfänger und versuche mich da noch in die ganze Systematik einzulesen. Deshalb wollte jetzt erstmal wissen ob ich mit der MaskedTextBox auf der richtigen Fährte bin oder doch lieber die TextBox nehmen sollte.
Hoffe ihr könnt mir ein wenig helfen(wahrscheinlich seh ich den wald vor lauter Bäumen nicht)! Danke!
 
Hallo

Die MaskedTextBox ist vor allem dafür gedacht, dem Anwender das einzugebende Format vorzugeben (Datum, Uhrzeit,...)
Wenn du sicher gehen kannst, dass die eingegeben Zahlen eine bestimmte Zeichenlänge nicht überschreiten, kannst du dieses Control nutzen (pro Ziffer ein 0 als Mask).
Die eingeben Zahl kannst du dann über das Text-Property abfragen.
Wenn die Zahl beliebig lang sein kann, solltest du besser eine normale TextBox nutzen und das KeyDown-Event abonnieren und darin prüfen, ob das eingegebene Zeichen eine Zahl ist oder nicht.
Alternativ könntest du auch das Control NumericUpDown nutzen, welches speziell für Zahlen ist.
 
Danke dir Nico für die Erläuterungen!
Das mit der Maske, usw hatte ich gestern schon rausgefunden, es hat bei mir an der geeigneten Methode, Property gelegen. Ich hab glaub ich zu "kompliziert" gedacht, und bin nicht auf das simple .Text gekommen..
 
Kann mir evtl. jemand sagen was ich hier falsch mache Habe schon x-tausend Versuche unternommen, umgestellt, etc, nichts passt.
Code:
           private String rw;
           private String hw;

      if (rw == " " || hw == " ")
           {
           maskedTextBox1.Text = " ";
           maskedTextBox2.Text = " ";
           return ;
           }


           rw = float.Parse(rw); //float rw = float.Parse(maskedTextBox1.Text) ->das geht unter anderem auch nicht
           hw = float.Parse(hw);

Ich möchte aus dem String, der aus der MaskedTextBox ausgelesen wurde nun einen float machen.
Oder muss ich ganz anders herangehen da meine Maske das Format 0000000,00 hat, also schon in einem float (bzw. double) vorliegt?
Wäre toll wenn mir jemand einen Tipp geben könnte!
 
Zuletzt bearbeitet:
Zurück