Drücke „Enter”, um zum Inhalt zu springen.

Slider Control mit Timepicker verbinden

Das Time-Pickercontrol, das mit den Smartforms verfügbar ist, ist meiner Meinung nach nicht sonderlich gut zu bedienen. Eine Überlegung ist, die Zeit über den Slider auswählen zu können. D.h. mit Bewegung des Sliders soll auch die Zeit im Timepicker-Control verändert werden.

Das Problem hierbei ist, dass das Slidercontrol nur numerische Werte zulässt, das Timepicker-Control aber das Zeitformat benötigt. Dies kann man recht einfach mit zwei Expressions lösen.
Im folgenden Beispiel soll über das Slidercontrol die Zeit in Schritten von 15 Minuten verändert werden können
  1. Hinzufügen des Timepickercontrols (Kalendercontrol mit Konfuguration Time-Only) und das Slidercontrol auf die View ziehen
  2. Slidercontrol: Minimum Value: 0 / Maximum Value:96
  3. Expression 1 (Ex-Anzahl-Minuten) – zur Berechnung der Minuten.
  4. Ziel ist es, ausgehend von 00:00 Uhr jeweils 15 Minuten zu addieren – d.h. wir bauen eine Expression, die den Value aus dem Slider mal 15 addiert. ({Value aus Slider} * 15)
  5. Expression 2 (Ex-Zeit) – Anzahl der Minuten in das Time-Format bringen. Hierzu kann man ganz einfach die DateTime-Funktion „AddMinutes()“ verwenden – AddMinutes(00:00,{Ex-Anzahl-Minuten})
  6. Expression 2 (Ex-Zeit) an das Timepicker-Control binden
  7. Fertig

Möchte man andere Intervallschritte haben, muss man entsprechend den Maximum Value des Slider-Controls ändern und in der Expression zur Minutenberechnung die Formel entsprechend ändern.

Bild 1: Expression zur Berechnung der Minuten

Bild 2: Expression zur Berechnung der Zeit
Bild 3: Controls auf der Smartforms-View
Bild 4: Konfiguration des Timepickers
Bild 5: Konfiguration des Sliders
Bild 6: Funktioniert – die Zeit ändert sich beim Bewegen des Sliders in 15-Minutenschritten