你如何检查存储文件夹是否为空 c#

How do you check if a storagefolder is null c#

我很惊讶以前没有出现过这个问题,我想我只是没有使用正确的搜索词,但现在已经坚持了一个小时了。

问题出在这里,当有人按下我的应用程序上的滚动按钮时,我希望出现一个文件夹选择器并允许该人选择一个文件夹,然后文件将保存在该文件夹中。我只希望它 运行 一次。

这是我的

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 在程序开始时设置运行 简单如 public StorageFolder theFolder;

我试过改变

theFolder = await folder.PickSingleFolderAsync(); 

while (theFolder.Equals(null))
{
    theFolder = await folder.PickSingleFolderAsync(); 
}

但这只会导致崩溃

"Object reference not set to an instance of an Object."

我还尝试获取文件夹的显示名称,如果它是空白的,则让文件夹选择器显示...同样的错误

我什至无法在用户每次单击时都显示文件夹选择器 运行,因为单击取消会使它崩溃(这会让用户非常恼火)

有什么想法吗?

我的应用程序是用于 windows phone 和商店的通用 c# 应用程序,它是我目前正在使用的 windows 商店版本

如果变量为 null,则不能对其调用方法。

while (theFolder == null)
{
    theFolder = await folder.PickSingleFolderAsync(); 
}