【问题标题】:Xamarin Forms open DatePicker from code on UWPXamarin Forms 从 UWP 上的代码打开 DatePicker
【发布时间】:2019-07-19 12:36:51
【问题描述】:

尝试在 xamarin 表单中创建自定义控件来处理可为空的日期。似乎有相当多的例子涵盖了 iOS 和 Android,但它们也没有涵盖 UWP。我已经完成了所有设置,但是当您有一个不可见的 datePicker 并在其上调用 .focus() 时,问题就出现了,iOS 和 Android 都会弹出 datePicker 弹出窗口,但这不适用于 UWP。

有人知道如何从代码中打开 UWP DatePicker 吗?

【问题讨论】:

    标签: xamarin xamarin.forms uwp datepicker nullable


    【解决方案1】:

    不要使用不可见的DatePicker,而是直接使用DatePickerFlyout。您可以使用其无参数构造函数对其进行实例化,然后使用ShowAtAsync 方法将其显示在特定位置:

    var flyout = new DatePickerFlyout();
    await flyout.ShowAtAsync(myButton); //show the flyout at a button
    

    【讨论】:

    • 嗨马丁,感谢您的回复。我已将此代码放入我的 xamarin 表单共享项目中,并将其包装为仅在设备类型为 UWP 时运行,到目前为止一切顺利。我遇到的问题是 ShowAtAsync 方法需要向其提供 FrameworkElement,并且它位于 Xamarin Forms Shared Project 中,因此不允许将通过触摸调用它的父 Grid 传递到 ShowAtAsync 方法中,因为它错误地说它不是有效的 FrameworkElement。有什么想法吗?
    猜你喜欢
    • 2018-06-30
    • 2018-02-01
    • 2017-12-21
    • 1970-01-01
    • 1970-01-01
    • 2019-01-29
    • 2021-11-25
    • 2021-05-24
    • 1970-01-01
    相关资源
    最近更新 更多