在UWP中任何时间控制小时,分钟和秒?

时间:2018-05-22 09:56:05

标签: c# xaml uwp timepicker

我希望有一个时间选择器控件,我可以设置小时,分钟和秒。默认的timepicker控件没有包含第二个。在timepicker控件中获取秒值的最简单方法是什么?

1 个答案:

答案 0 :(得分:1)

内置TimePicker确实不支持秒输入。您可以继承TimePicker并手动扩展它以支持此方案,但这可能非常复杂,因为您不仅必须修改控件本身的模板,而且还必须编辑{{1}支持秒输入。它甚至可能根本不可能,并且可能是一种矫枉过正。

我认为更好更简单的解决方案是使用{{3>},它是 Windows社区工具包的一部分。这允许您定义TimePickerFlyoutPresenter的自定义格式,如下所示:

TextBox

<TextBox extensions:TextBoxMask.CustomMask="5:[0-5]" extensions:TextBoxMask.Mask="99:59:59" /> 将支持TextBox格式的输入。默认情况下,hh:mm:ss支持字符Mask,{0}支持数字0-9,a支持任意字符。您可以使用9定义自定义掩码字符,这是我在此处所做的,以确保将数十分钟和秒限制为五十(00-59)。

另一种解决方案可能是创建一个自定义控件,将常规内置*CustomMask组合在一起只需几秒钟,但我认为TimePicker更好,用户更友好溶液