BitmapImage和Uri用于本地文件(WinRT商店应用)

时间:2014-08-24 14:53:38

标签: c# windows-runtime bitmapimage

我正在尝试显示生活在我的c:驱动器上的图像。下面的代码显示了我如何处理两个图像:图像1是本地的,图像2来自网络。

图像1无法显示,图像2完美运行。为什么图像1无法显示?

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        // Image 1 - lives on local disk
        var uri = new Uri(@"C:\Users\Frank\Pictures\MindMap.jpg", UriKind.Relative);
        BitmapImage img = new BitmapImage(uri);
        testImage.Source = img; 

        // Image 2 - image lives on web 
        var uri2 = new Uri("http://www.mommyish.com/wp-content/uploads/2013/05/GwynethPaltrow.jpg");
        BitmapImage img2 = new BitmapImage(uri2);


        testImage2.Source = img2;
    }

1 个答案:

答案 0 :(得分:0)

你不能这样做。因为app对设备/计算机的访问权限有限。从中可以理解 - 要访问Pictures library张照片,您必须明确地将capability添加到您的应用中。您也可以理解这一点 - 出于安全原因。

假设它已正确显示但几天之后有人删除了它。然后你的应用程序发生了什么。它会崩溃。或者您可以说应用程序依赖于设备上班。

因此,您最好了解应用程序的域以及可以使用的应用程序的资源和功能。 首先,将图片添加到YourAppFoder,然后再访问它。