首页 > 解决方案 > Xamarin 表单:如何使时间选择器不允许选择过去的时间

问题描述

在我的项目中,我使用TimePicker来选择时间。使用它,我正在我的应用程序上创建一些事件。

我的问题是当我打开 TimePicker 时,我需要禁用过去的时间。

例如,如果当前时间是上午 10:15,我需要禁用从上午 12 点到上午 10:14 的所有过去时间。这种功能是否有可用的属性?

对于DatePicker,我们有一个名为MinimumDate. 但我没有看到时间选择器有任何类似的东西。

标签: xamarin.forms

解决方案


当您为事件调用保存函数时,(在选择时间后)为时间添加验证,如下所示:

if ((DateTime.Now.TimeOfDay < timePicker.Time)
{
     Debug.WriteLine("choosed time is future time");
}
else
{
    Debug.WriteLine("choosed time is past time");
}

如果代码命中 if 块,则时间选择器有一个未来时间,如果它在 else 块上,则选择的时间来自过去。


推荐阅读