【问题标题】:Calling FileOpenPicker in OnNavigatedTo works only on Win 10 on PC but not on Win 10 Mobile在 OnNavigatedTo 中调用 FileOpenPicker 仅适用于 PC 上的 Win 10,但不适用于 Win 10 Mobile
【发布时间】:2019-10-25 14:13:08
【问题描述】:

在 UWP 应用中,我想在导航到页面时提示用户选择文件。

我正在覆盖页面中的方法OnNavigatedTo 并从中调用选择器。它在PC上运行没有问题。但是当我在装有 Windows 10 Mobile (Lumia 640) 的移动设备上运行它时,它就不起作用了!

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

【问题讨论】:

    标签: uwp win-universal-app windows-10-universal


    【解决方案1】:

    在 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
        {
    
        }
    
    }
    

    【讨论】:

      猜你喜欢
      • 2018-11-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-27
      • 1970-01-01
      • 2017-03-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多