C# FileOpenPicker在Xbox One上始终返回null

C# FileOpenPicker在Xbox One上始终返回null,c#,uwp,xbox,C#,Uwp,Xbox,我目前正在为我的UWP应用程序(可在Xbox One和Windows 10上使用)完成更新,但在测试过程中,我发现FileOpenPicker无法按预期工作:即使选择了文件,它也会返回null,仅在Xbox One上。(在Windows 10上,所有操作都正常,将返回一个存储文件。) 代码如下: FileOpenPicker picker = new FileOpenPicker // New picker with filters { ViewMode = PickerViewMode

我目前正在为我的UWP应用程序(可在Xbox One和Windows 10上使用)完成更新,但在测试过程中,我发现FileOpenPicker无法按预期工作:即使选择了文件,它也会返回null,仅在Xbox One上。(在Windows 10上,所有操作都正常,将返回一个存储文件。)

代码如下:

FileOpenPicker picker = new FileOpenPicker // New picker with filters
{
    ViewMode = PickerViewMode.Thumbnail,
    SuggestedStartLocation = PickerLocationId.Downloads,
    FileTypeFilter = { ".zip", ".mcworld", ".mcpack", ".mcaddon" }
};

StorageFile packToImport = await picker.PickSingleFileAsync();

if (packToImport != null)
{
    try
    {
        Importer packImporter = new Importer();

        progressPanel.Visibility = Visibility.Visible;
        pTxt.Text = "Importing".GetLocalized();

        await Task.WhenAll(packImporter.Import(packToImport));

        progressPanel.Visibility = Visibility.Collapsed;
        pTxt.Text = string.Empty;
    }
    catch (Exception ex)
    {
        await MessageHelper.ShowContentBox("Error".GetLocalized(), ex.Message, "OK", "");
    }
    finally
    {
        NavigationHelper.ReloadPage(typeof(PacksView));
    }
}
如果文件为空,我尝试添加一个
else
,然后执行。因此,问题不在之后执行的
Import()
函数中

为了精确地描述发生的一件奇怪的事情,FileOpenPicker使用的是旧版本的应用程序(目前发布在Microsoft Store上);我没有更改文件选择器代码中的任何内容


编辑:我想澄清一下,网站引用了FolderPicker,但是FilePicker可以代替它工作。

根据文档:

Xbox不支持与文件夹选择器相关的文件夹选择器方案。请参阅FolderPicker类

资料来源:


这意味着如果它起作用,你是幸运的,你不应该期望它起作用。即使程序在今天运行,它也可能在以后的更新中被破坏。

根据文档:

Xbox不支持与文件夹选择器相关的文件夹选择器方案。请参阅FolderPicker类

资料来源:


这意味着如果它起作用,你是幸运的,你不应该期望它起作用。即使程序在今天运行,它也可能在以后的更新中被破坏。

我设法让它运行起来。只需将目标锁定在较旧的Xbox版本:)

我成功地实现了这一目标。只是必须针对较旧的Xbox版本:)

您好,这是针对FolderPicker:)我使用的是FileOpenPicker,它不同,并且总是在编辑之前工作:您好,这是针对FolderPicker:)我使用的是FileOpenPicker,它不同,并且总是在编辑之前工作:您好!为了让你的问题更容易回答,它应该更独立。请将代码第162至168行的副本放入代码块中。您仍然可以显示指向外部源代码的链接,但不要强迫读者转到外部链接以便能够阅读其中的一小部分。好的,对不起,我是StackOverflow的初学者,没问题。现在你的问题更清楚了,这让别人更容易给你带来好的答案!;)非常感谢:)那里似乎更好!为了让你的问题更容易回答,它应该更独立。请将代码第162至168行的副本放入代码块中。您仍然可以显示指向外部源代码的链接,但不要强迫读者转到外部链接以便能够阅读其中的一小部分。好的,对不起,我是StackOverflow的初学者,没问题。现在你的问题更清楚了,这让别人更容易给你带来好的答案!;)非常感谢:)看起来好多了