目前拖放的示例仅适用于图像等存储文件。但是文件夹会发生什么。
我已经成功实现了文件和多个文件,但是当我尝试使用文件夹并读取其项目时,它返回 0 个文件,我的代码:
if (e.DataView.Contains(StandardDataFormats.StorageItems))
{
var items = await e.DataView.GetStorageItemsAsync();
bool hasfolders = false;
foreach (var item in items)
{
if (item is StorageFile)
{
var newFavorite = await FavoriteFromFile(item as StorageFile, groupcategory.Key);
if (newFavorite != null)
newFavorites.Add(newFavorite);
}
else if(item is StorageFolder)
{
var favs = await FavoritesFromFolder(item as StorageFolder, groupcategory.Key);
hasfolders = true;
}
}
...
在 FromFolder 里面:
private async Task<List<Favorite>> FavoritesFromFolder(StorageFolder folder, Category cat)
{
List<Favorite> ret = new List<Favorite>();
foreach (var item in await folder.GetItemsAsync())
{
这里返回 0 个项目,因此可能未实现或不支持。