Benutzer mit den meisten Antworten
Textbox format abfragen

Frage
-
Guten tag,
Ich habe ein Problem wo ich nicht auf die Lösung komme. Auch bei Google finde ich nichts da ich nicht genau weis wonach ich suchen müsste um es zu finden.
Aber jetzt zu meinem Problem.
Ich habe eine Textbox in die eine Zeit eingetragen werden muss in dem Format "Stunde:Minute:Sekunde" wichtig ist das der Doppelpunkt dazwischen steht. Wie kann ich das jetzt abfragen ob das in diesem Format steht? Weil wenn es nicht in diesem Format steht dann stützt das Programm ab und das möchte ich nicht. Ich möchte das dann eine Messagebox angezeigt wird das der Benutzer das falsche Format genutzt hat.
Hoffe jemand kann mir helfen. Danke
~Christoph
Antworten
-
Hallo,
ich vermute mal, das du meine Idee mit dem TimeSpan/DateTime.Parse umgesetzt hast. DateTime und TimeSpan haben noch eine andere Methode, die bei falschen Formaten keine Exception wirft:TimeSpan lz; DateTime ez; if(!TimeSpan.TryParse(textBoxLaufzeit.Text, out lz)){ MessageBox.Show("Ungültige Zeitspanne"); return;//Methode abbrechen } if(!DateTime.TryParse(textBoxEndzeit.Text, out ez)){ MessageBox.Show("Ungültige Endzeit"); return;//Methode abbrechen } //lz und ez haben an dieser Stelle gültige Werte
Die TryParse-Methoden geben true zurück wenn die Konvertierung geklappt hat. Wenn dem so ist, wird dem per out übergebenen Parameter der Wert zugewiesen.Tom Lambert - .NET (C#) MVP
Wozu Antworten markieren und für Beiträge abstimmen? Klicke hier.
Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter | Account bestätigen (Verify Your Account)
Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets- Als Antwort vorgeschlagen Stefan FalzModerator Sonntag, 29. März 2015 13:30
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Donnerstag, 9. April 2015 13:11
Alle Antworten
-
Hallo,
ich vermute mal, das du meine Idee mit dem TimeSpan/DateTime.Parse umgesetzt hast. DateTime und TimeSpan haben noch eine andere Methode, die bei falschen Formaten keine Exception wirft:TimeSpan lz; DateTime ez; if(!TimeSpan.TryParse(textBoxLaufzeit.Text, out lz)){ MessageBox.Show("Ungültige Zeitspanne"); return;//Methode abbrechen } if(!DateTime.TryParse(textBoxEndzeit.Text, out ez)){ MessageBox.Show("Ungültige Endzeit"); return;//Methode abbrechen } //lz und ez haben an dieser Stelle gültige Werte
Die TryParse-Methoden geben true zurück wenn die Konvertierung geklappt hat. Wenn dem so ist, wird dem per out übergebenen Parameter der Wert zugewiesen.Tom Lambert - .NET (C#) MVP
Wozu Antworten markieren und für Beiträge abstimmen? Klicke hier.
Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter | Account bestätigen (Verify Your Account)
Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets- Als Antwort vorgeschlagen Stefan FalzModerator Sonntag, 29. März 2015 13:30
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Donnerstag, 9. April 2015 13:11
-
Tausche einfach die bisherigen Aufrufe der Parse-Methode gegen TryParse aus.
Also in meinem Code aus der anderen Frage die ersten beiden Zeilen gegen das oben gezeigte mit den if-Abfragen.Tom Lambert - .NET (C#) MVP
Wozu Antworten markieren und für Beiträge abstimmen? Klicke hier.
Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter | Account bestätigen (Verify Your Account)
Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets