我很惊讶,这之前没有出现,我认为我只是没有使用正确的搜索词,但被困在这一个小时。
这是一个问题,当有人按下我的应用程序上的滚动按钮时,我想要一个文件夹选择器出现,允许这个人选择一个文件夹,然后文件保存在那个文件夹中。我只想让它跑一次。
这是我拥有的
FolderPicker folder =new FolderPicker();
folder.FileTypeFilter.Add(".html");
folder.ViewMode = PickerViewMode.List;
folder.SuggestedStartLocation = PickerLocationId.DocumentsLibrary;
folder.SettingsIdentifier = "folder";
theFolder = await folder.PickSingleFolderAsync();
StorageFile file = await theFolder.CreateFileAsync(name + ".html", CreationCollisionOption.ReplaceExisting);
这是可行的,但当然每次我运行该方法时都会出现选择器(就像它现在要做的设置一样)。
在程序开始时设置的StorageFolder theFolder简单地作为公共StorageFolder theFolder运行;
我试过改变
theFolder = await folder.PickSingleFolderAsync();
至
while (theFolder.Equals(null))
{
theFolder = await folder.PickSingleFolderAsync();
}
但那只会引起车祸
"Object reference not set to an instance of an Object."
我还尝试获取文件夹的显示名称,如果是空的,则将文件夹选择器设置为show...same错误。
我甚至不能让文件夹选择器每次点击运行时都显示出来,因为单击cancel会使它崩溃(这对用户来说很烦人)
有什么想法吗?
我的应用程序是c#中用于windows电话和商店的通用应用程序,它是我目前正在开发的windows商店版本。
发布于 2015-04-21 06:20:44
如果变量为null,则不能对其调用方法。
while (theFolder == null)
{
theFolder = await folder.PickSingleFolderAsync();
}
https://stackoverflow.com/questions/29774712
复制相似问题