Uwp 在OnNavigatedTo中调用FileOpenPicker仅适用于PC上的Win 10,而不适用于Win 10 Mobile

Uwp 在OnNavigatedTo中调用FileOpenPicker仅适用于PC上的Win 10,而不适用于Win 10 Mobile,uwp,win-universal-app,windows-10-universal,Uwp,Win Universal App,Windows 10 Universal,在UWP应用程序中,我希望在导航到页面时提示用户选择文件 我正在覆盖页面中导航到的方法on,并从中调用选择器。它可以在PC上正常工作。但当我在装有Windows10Mobile(Lumia640)的移动设备上运行它时,它就不工作了 只是为了测试一下,如果我调用CameraCaptureUI而不是FileOpenPicker,它在PC和手机上都可以正常工作 在OnNavigatedTo中调用FileOpenPicker仅适用于PC上的Win 10,而不适用于Win 10 Mobile 问题是移动设

在UWP应用程序中,我希望在导航到页面时提示用户选择文件

我正在覆盖页面中导航到的方法
on
,并从中调用选择器。它可以在PC上正常工作。但当我在装有Windows10Mobile(Lumia640)的移动设备上运行它时,它就不工作了

只是为了测试一下,如果我调用
CameraCaptureUI
而不是
FileOpenPicker
,它在PC和手机上都可以正常工作

在OnNavigatedTo中调用FileOpenPicker仅适用于PC上的Win 10,而不适用于Win 10 Mobile

问题是移动设备是低性能的设备。在导航方法之后立即调用选择器将导致设备无响应。因此,您可以在调用piker之前添加任务延迟,如下所示

protected async override void OnNavigatedTo(NavigationEventArgs e)
{
    base.OnNavigatedTo(e);
    await Task.Delay(100);

    FileOpenPicker openPicker = new FileOpenPicker();
    openPicker.ViewMode = PickerViewMode.Thumbnail;
    openPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
    openPicker.FileTypeFilter.Add(".jpg");
    StorageFile file = await openPicker.PickSingleFileAsync();
    if (file != null)
    {

    }
    else
    {

    }

}