microsoft / xaml-standard

XAML Standard : a set of principles that drive XAML dialect alignment
Other
804 stars 50 forks source link

Add TimeSpanPicker #46

Open selaromdotnet opened 7 years ago

selaromdotnet commented 7 years ago

<TimeSpanPicker Value="{Binding TimeSpanValue}" Minimum="00:00:00" Maximum="30:24:60:60" StepFrequency="00:00:05" ValueChanged="TimeSpanPicker_ValueChanged" />

Last time I was able to use this was in WP8 via the Coding4Fun Toolkit, would be great to have this again across all platforms!

birbilis commented 7 years ago

Btw, the time picker (say for Alarm setting) in Windows 10 mobile is tragic, esp when compared to beautiful WP8 one

MovGP0 commented 7 years ago

there should be a circular time picker like in Android or Realarm. The reason is that it is way faster to set the exact time with it.

See also:

skendrot commented 7 years ago

Default control style should mimic whatever style is in the platform

nickrandolph commented 7 years ago

Is the intent of this for a timespan or a time picker?

selaromdotnet commented 7 years ago

timespan, for selecting durations, such as if you want a countdown, or want to specify something to happen every X minutes, a selector to specify that timespan duration.

crutkas commented 7 years ago

why not port and update the C4F control to the UWP Community Toolkit?

selaromdotnet commented 7 years ago

lol i'd love to but it's not a trivial task, I tried doing it for winrt (8.1) and gave up after I realized how in over my head I was...

of course I've learned a lot since then, so I wouldn't mind taking it up again...

but I think the question here is whether or not it would be included in Xaml Standard, and I think it should be.

crutkas commented 7 years ago

I think it is totally a valid ask to be in the XAML Standard. I would suggest following the template

As the guy that wrote most of the C4F toolkit, I totally understand. Raise the issue over at https://github.com/Microsoft/UWPCommunityToolkit/ and point at the C4F toolkit for a base. Issue with how that control acts is it is very touch centric. How should it act on a PC versus a mouse versus a controller. They may be able to whip up a control with your help.

dotMorten commented 7 years ago

Another thing to consider in time step pickers is to specify the interval as a double and a unit, instead of an absolute TimeSpan. The reason for that is you might want to pick in increments of days, months, years, but these are never the same length. Some days are 25 or 23 days long when switching to/from daily savings time, months are 28-31 days long, and years 365 or 366 days.

It's actually quite hard to make a picker that selects a number of months, because you have to consider all these.