Xamarin.forms 日期选择器的UpdateMode

Xamarin.forms 日期选择器的UpdateMode,xamarin.forms,datepicker,xamarin.ios,Xamarin.forms,Datepicker,Xamarin.ios,我想像这样更改更新模式。这是我的代码: this.datePicker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished); this.datePicker.On().SetUpdateMode(UpdateMode.WhenFinished); 第一部分被标记为错误的this.datePicker.On(),它正在引用xaml中的一个对象。在其他地方,同样的代码工作正常。我不知道这里出了什么问题。错误消息是: 返回此DatePick

我想像这样更改更新模式。这是我的代码:

this.datePicker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished);
this.datePicker.On().SetUpdateMode(UpdateMode.WhenFinished);
第一部分被标记为错误的
this.datePicker.On()
,它正在引用xaml中的一个对象。在其他地方,同样的代码工作正常。我不知道这里出了什么问题。错误消息是:

返回此DatePicker的特定于平台的实例,可以在该实例上调用特定于平台的方法

“IPlatformElementConfiguration”不包含“SetUpdateMode”和最佳扩展方法重载“Picker”的定义。SetUpdateMode(IPlatformElementConfiguration,UpdateMode)”需要“IPlatformElementConfiguration”类型的接收器

有什么建议吗

编辑:


似乎所需的行为(updateMode)仅适用于
Picker
,而不适用于
DatePicker
。看到或看到。是否有办法同时为
日期选择器启用该功能?如何操作?

遗憾的是,日期选择器无法使用UpdateMode

我发现的解决方法是创建一个自定义日历(我做到了)。自定义日历看起来很难创建,但实现起来很简单(基本功能)。 在xamarin只有一个月的经验,我就创造了它

您可以在此处查看完整的代码:


此处使用Xamarin Forms 4.6。在自定义渲染器中使用以下代码:

protected override void OnElementChanged(ElementChangedEventArgs<DatePicker> e)
{
    base.OnElementChanged(e);

    if (e.NewElement != null && Control != null)
    {
        ...
        Element.On<Xamarin.Forms.PlatformConfiguration.iOS>().SetUpdateMode(UpdateMode.WhenFinished);
        ...
    }
}
protected override void OnElementChanged(ElementChangedEventArgs e)
{
基础。一个要素发生变化(e);
if(例如NewElement!=null&&Control!=null)
{
...
Element.On().SetUpdateMode(UpdateMode.WhenFinished);
...
}
}

我想原因是simple DatePicker没有此功能,只有Picker有此功能!是的,我发现了。但是有解决办法吗?将
选取器
中的某些代码放入自定义呈现程序?在日期选取器中,您基本上希望用户选择一个日期,然后按下要选择的日期的“完成”按钮。是的,只有当按下“完成”按钮时,才会引发
日期选择
事件。默认行为是,在每次微小的滚动运动(选择“完成”之前)上都会抛出事件。在做了一些研究之后,我认为datePicker的updateMode目前还不可用。您是说custom
datePicker
?不知道这是多少代码,但也许您可以在此处将其添加到您的答案中。已更新。请查看提到的网站。答案的链接不好,不构成真正的答案,因为链接是外部的,可能会更改或删除。只是想对某人有用,因为我也经历了同样的问题,必须创建自定义日历。我不知道您的解决方案。谢谢。有没有其他方法可以显示完整的代码?这是XF 4.6之后的新版本?我不这么认为。不知道是哪个版本。看起来很有趣,但目前我无法测试:-(这真的适用于
日期采集器吗?
?你认为我会发布一个我知道不起作用的答案吗?不,但通常人们没有完全阅读/理解这个问题,并根据这个问题写一个答案,这不是我要求的。但我认为你发布这个答案令人难以置信,因为所有其他人都说它不起作用!