Bester Ansatz für in WinForms mit der Zeit zu arbeiten?
-
21-09-2019 - |
Frage
Ich versuche, ein Feld zu machen, wo Benutzer viel Zeit pro Tag geben wird er / sie an einem Projekt pro Tag ausgegeben. Es kann bis zu 8 Stunden 30 Minuten betragen. Ist DateTimePicker
mit CustomFormat
hh: mm beste Wahl für das? Oder gibt es eine bessere Alternative für WinForms C #? Vielleicht TextBox
oder MaskedTextBox
mit speziellen Einstellungen?
Lösung
Obwohl die MaskedTextBox im Allgemeinen ein Schmerz ist, ist dies eine Situation ist es sinnvoll sein könnte. Mit Mask = "00:00". Geben Sie ihm einen Spin.
Und Sie werden zu / von Text in Timespan konvertieren selbst
Andere Tipps
Wenn Sie mit ihm vertraut sind, würde ich eine individuelle Steuerung für diese bauen. Vielleicht lesen ein nur Textbox, wo ich die formatierte Zeit damit verbracht anzuzeigen, und zwei Tasten, eine für eine für unten, das aussah, so etwas wie die alte VB updown Kontrolle. Ich würde vorschlagen, ein Minimum, Maximum zugibt und nach oben / unten Intervall Eigenschaften auch. Dies sollte eine einfache genug Kontrolle zu tun, und es würde einen langen Weg zur Vereinfachung der Benutzereingabe gehen.
Wie über ein Textfeld mit dem Format "7h 30m" (7 Stunden und 30 Minuten)