C#UWP显示图像

C#UWP显示图像,c#,uwp,C#,Uwp,我有个小问题。我必须显示图片库中的图像。 我有以下代码: info = new ImageFileInfo() { ImageTitle = file.Path, ImageType = file.DisplayType, Image = file.Path }; 我尝试使用转换器: return new Uri("ms-appx:///" + imagename, UriKind.Absolute); 但是我的照片没有出现。 我知道有一种方法可以显示项目外部的图像,因为我以前一

我有个小问题。我必须显示图片库中的图像。 我有以下代码:

    info = new ImageFileInfo() { ImageTitle = file.Path, ImageType = file.DisplayType, Image = file.Path };
我尝试使用转换器:

  return new Uri("ms-appx:///" + imagename, UriKind.Absolute);
但是我的照片没有出现。
我知道有一种方法可以显示项目外部的图像,因为我以前一直在使用它,但我忘记了它是如何完成的,我在任何地方都找不到它。

ms appx的Uri模式只用于项目中的文件,图片库中的文件无法通过它获得

在UWP中,我们不建议使用文件路径来获取文件。因为UWP对从路径访问文件有严格的限制

如果要访问图片库中的文件,首先需要在package.appxmenifest的Capability选项卡中选中
图片库

然后您可以按文件名访问它:

var img=await KnownFolders.PicturesLibrary.TryGetItemAsync(“test.png”);
但还有其他更推荐的方法,如使用令牌访问文件:

获取文件后,我们将其存储在未来的访问列表中并获取令牌

保存

string faToken=Windows.Storage.AccessCache.StorageApplicationPermissions.FutureAccessList.Add(文件);
info=new-ImageFileInfo(){ImageTitle=file.Path,ImageType=file.DisplayType,Image=faToken};
获取

var image=Windows.Storage.AccessCache.StorageApplicationPermissions.FutureAccessList.GetFileAsync(info.image);