1

私はC#とXAMLを使用してメトロアプリを開発しています。ご存知のとおり、以下のコードを使用して音楽ライブラリ内の音楽ファイルを検索できます。

IReadOnlyList<IStorageItem> itemsList  = await KnownFolders.MusicLibrary.GetItemsAsync();

D:などの他のドライブ(パーティション)の音楽ファイルはE:どうですか?他のドライブで音楽ファイルを検索する方法はありますか? 簡単な説明:ハードドライブからファイルを検索してGridviewに表示したい.mp3のですが、これを実現する効率的な方法はありますか?私を助けてください。

4

3 に答える 3

0

Windowsストアアプリは、アプリケーションのKnownFoldersまたはLocalFolder内での検索に制限されているため、他のドライブ内で検索することはできません。

于 2012-11-18T13:17:11.200 に答える
0

FolderPicker で選択したフォルダーをアプリが記憶することも可能です。FutureAccessList の使用方法を説明したWindows 8 アプリとファイル システムへのアクセスに関する私の投稿を参照してください...

于 2013-03-24T13:02:21.060 に答える
0

他のフォルダーまたはドライブ内を検索することは可能ですが、FolderPicker を使用して StorageFolder を選択する必要があります...

async Task<IEnumerable<StorageFile>> FindMusicFiles()
{
    var folderPicker = new FolderPicker()
    {
        CommitButtonText = "Yippie!",
        SuggestedStartLocation = PickerLocationId.ComputerFolder,
        ViewMode = PickerViewMode.List
    };

    folderPicker.FileTypeFilter.Add("*");
    StorageFolder folder = await folderPicker.PickSingleFolderAsync();

    if (folder != null)
    {
       StorageFileQueryResult queryResult = folder.CreateFileQuery();
       queryResult.ApplyNewQueryOptions(new QueryOptions(CommonFileQuery.OrderByName, new[] { ".mp3" }));
       IReadOnlyList<StorageFile> files = await queryResult.GetFilesAsync();
       return files;
    }

    return new StorageFile[] { };
}
于 2012-11-19T23:08:52.550 に答える