如何通过MediaElement播放来自图书馆的文件?

sah*_*hap 2 c# windows-store-apps

我只能从应用程序存储中播放文件,但是,我必须从库或其他来源播放文件.我试着:

        var storageFile = await StorageFile.GetFileFromApplicationUriAsync(new Uri("C:\\Users\\admin\\Music\\line.mp3"));
        var stream = await storageFile.OpenAsync(FileAccessMode.Read);

        mediaElement.SetSource(stream, storageFile.ContentType);

        mediaElement.Play();
Run Code Online (Sandbox Code Playgroud)

它给出了异常:"Polar.exe中出现类型'System.ArgumentException'的异常,但未在用户代码中处理.附加信息:值不在预期范围内."

我尝试了mediaElement.Source(),但元素没有播放声音.没有例外,没有任何东西.

我认为这是愚蠢的问题,但我找不到解决方案.我做错了什么?

Xyr*_*oid 5

如果要从库中播放音频文件,则需要使用KnownFolders.GetFileFromApplicationUriAsync不行.

var storageFile = await KnownFolders.MusicLibrary.GetFileAsync("line.mp3");
var stream = await storageFile.OpenAsync(FileAccessMode.Read);
mediaElement.SetSource(stream, storageFile.ContentType);
mediaElement.Play();
Run Code Online (Sandbox Code Playgroud)

如果要枚举所有媒体文件或所有文件夹,请使用此文件.

var AllStorageFiles = await KnownFolders.MusicLibrary.GetFilesAsync();
var AllStorageFolders = await KnownFolders.MusicLibrary.GetFoldersAsync();
Run Code Online (Sandbox Code Playgroud)