Windows Phone Date Picker提交事件



我在Windows Phone应用中有一个本机选择器。
使用 datechanged 事件,我可以在用户提交时执行操作。

DatePicker.DateChanged += (o, args) => 
{
    var date = args.NewDate;
    // Do something with it
}

我面临的问题是,如果用户提交日期选择器而不更改日期,则不会触发事件。
默认值设置为今天的日期,这使得无法选择此日期。

有人知道我如何允许用户选择此日期并在之后执行操作?

感谢您的帮助:)

当日期不更改时,没有特定的方法可以触发事件。如您所说,默认情况下的日期选择器选择当前日期,如果用户在OnnavigatedTo,已加载或DatePicker_loaded事件中选择今天的日期,则可以执行要执行的操作。这样做的更好的方法是为datepicker提供无效的日期,例如1Jan1947,这是用户必须更改日期的方式,否则将是无效的。另外,如果您在DateChanged事件上编写所需的代码,它将自动触发,就像加载日期时一样,它将设置从默认日期到当前日期的日期。

我建议

  1. 是使用绑定属性保持值,然后执行该属性的操作范围内的事件。这是你的逻辑独立于您的datepicker,您可以编写事件每次DateTime属性更改。

  2. 确实记得将datepicker的日期属性绑定到DateTime属性处于两种模式和更新财产换了。从代码更改属性的方式数据背后会反映在datepicker中,当您更改时datepicker中的值,数据将反映在代码中背后

最新更新