这可能是我的设置或其他内容的顺序,但是我尝试了多种方式,并在功能完成之前验证了属性。
但是,当我尝试以下操作时: -
DatePicker datePicker1 = new DatePicker();
datePicker1.MinimumDate = DateTime.Now.Date;
datePicker1.MaximumDate = DateTime.Now.Date.Add(new TimeSpan(7,0,0,0));
datePicker1.Date = DateTime.Now.Date;
datePicker1.Format = "MMM dd, yyyy";
在WindowsPhone
测试时,我仍然可以选择早于我设置的最小和最大日期值的日期。
实际上,通过向DateSelected
添加事件监听器的进一步测试,我已经注意到这个控件做了各种各样奇怪的事情: -
所以,我运行时的原始日期是: 2015年8月3日
然后我将月份更改为7月,然后点击勾选。然后显示 2015年7月3日,这显然小于我的最低日期。我没有通过' DateSelected'提出任何活动。但它确实改变了我选择的日期的用户界面。
如果我将月份更改为6月,则不会引发任何事件,但显示屏显示 2015年6月3日。
如果我将月份更改为10月,我会收到一个活动,显示屏会显示 2015年8月10日,这是我的最长日期,所以这很好。
如果我再将月份更改为6月,我会举办活动,显示屏会显示 2015年8月3日,这是我的最低日期。
我似乎也无法捕获DateSelected属性更改,因为似乎没有触发UI更新以尝试以另一种方式处理此方案。
有没有办法让这个控件正常运行?我使用Xamarin.Forms 1.4.2
。
答案 0 :(得分:0)
请升级到1.4.4。
Xamarin Forms 1.4.3针对Android和WinPhone中的DatePicker的错误修复进行了许多更新,但最好一直升级,因为1.4.4还修复了许多其他问题。1.4.3中修复的日期选择器问题