UWP——我怎么得到FolderInformation StorageFolder在c#中吗?&l



我使用FileInformationFactory。GetVirtualizedFoldersVector方法填充ListView控件。GetVirtualizedFoldersVector IStorageItemInformation对象返回一个向量在文件夹的情况下Windows.Storage.BulkAccess.FolderInformation。

在单击的项目事件处理程序中,我想获得相应的StorageFolder

在c++/WinRT中我可以使用

void MainPage::FolderListView_ItemClick(Windows::Foundation::IInspectable const&, Windows::UI::Xaml::Controls::ItemClickEventArgs const& args)
{
auto clickedItem = args.ClickedItem();
if (clickedItem)
{
auto folder = clickedItem.try_as<StorageFolder>();
if (folder)
{
// We have a StorageFolder
}
}
}

这工作得很好,但在c#中不工作!

private void FolderListView_ItemClick(object sender, ItemClickEventArgs args)
{
var clickedItem = args.ClickedItem;
if (clickedItem != null)
{
StorageFolder folder = clickedItem as StorageFolder;
if (folder != null)
{
// folder is always null
}
}
}

我不想使用StorageFolder.GetFolderFromPathAsync(),因为路径是空的(")虚拟化的位置,如KnownFolders。MediaServerDevices

尝试将其强制转换为特定的接口,如IStorageFolder,而不是类。

相关内容

最新更新