的SuggestedStartLocation与ActualStartLocation
作者:互联网
设置文件夹以打开FileOpenPicker时,UWP中没有ActualStartLocation这样的东西,这是我提出问题的原因.有一个SuggestedStartLocation,但是Microsoft site明确指出:
“ SuggestedStartLocation并不总是用作文件选择器的开始位置.为了给用户带来一致性的感觉,文件选择器会记住用户导航到的最后一个位置,通常会从该位置开始.”
SuggestedStartLocation会记住您所在的位置,并每次都继续打开相同的文件夹.例如,将此代码添加到UWP项目中的按钮单击事件中:
FileOpenPicker openPicker = new FileOpenPicker();
openPicker.ViewMode = PickerViewMode.Thumbnail;
openPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
openPicker.FileTypeFilter.Add(".jpg");
StorageFile file = await openPicker.PickSingleFileAsync();
if (file != null) {
TextBlock1.Text = "Selected Photo: " + file.Name;
} else {
TextBlock1.Text = "Operation cancelled.";
}
现在运行程序并选择一张图片.
关闭程序,将代码更改为使用MusicLibrary而不是PicturesLibrary.
再次运行该程序,然后单击按钮,即使您要求看音乐,您也将返回到PicturesLibrary.
有没有一种方法可以覆盖此问题,并强制将文件选择器启动的位置? (即:ActualStartLocation)
我正在尝试制作一个用户在其中选择图片和音乐文件的应用程序,如果图片选择器始终在图片文件夹中打开,并且音乐选择器始终在音乐文件夹中打开,那就太好了.
解决方法:
如您所知,这是设计使然.
“The SuggestedStartLocation is not always used as the start location for the file picker. To give the user a sense of consistency, the file picker remembers the last location that the user navigated to and will generally start at that location.”
当您使用FileOpenPicker拾取文件时,PickerHost.exe将被午餐. PickerHost是一个系统应用程序.它将记录您访问过的最新位置.您无法在应用程序中更改记录.当前,没有这样的“ ActualStartLocation”属性可以实现所需的效果.如果您确实需要此功能,欢迎致电UserVoice询问.
标签:filepicker,uwp,c 来源: https://codeday.me/bug/20191111/2020145.html