下面的代码几乎是原样来自 FileOpenPicker 的 MSDN 示例类。
FileOpenPicker picker = new FileOpenPicker();
picker.ViewMode = PickerViewMode.Thumbnail;
picker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
picker.FileTypeFilter.Add(".png");
picker.FileTypeFilter.Add(".jpg");
picker.FileTypeFilter.Add(".jpeg");
StorageFile file = await picker.PickSingleFileAsync();
当我从按钮触发它时,我从最后一行得到以下异常:
System.UnauthorizedAccessException
Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
我认为 FileOpenPicker 在这种用法中的想法是我不需要向用户询问访问权限或指定任何功能?
最佳答案
我在调用 PickSingleFileAsync()
之前设置了一个断点。事实证明,在 Border 内按下 TextBlock 时会触发两个点击事件(均具有相同的 Tapped 事件处理程序)。
第一次调用按预期工作,但随后的调用导致 UnauthorizedAccessException 并且会在显示选择器后立即发生。
关于c# - FileOpenPicker PickSingleFileAsync 抛出 UnauthorizedAccessException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15493455/