【问题标题】:WinRT: Image - image doesn't show up if not included as resourceWinRT:图像 - 如果不包含在资源中,图像不会显示
【发布时间】:2012-12-04 01:57:53
【问题描述】:

我的 Windows 应用商店应用程序/Metro/Win RT 应用程序将图像从服务器下载到某个本地文件夹。我需要在运行时将图像控件绑定到下载的图像。

问题是图像不会显示,除非我将其作为二进制资源添加到项目中。

我下载的图像存储在 ProjectFolder/Data/Media 中。现在,这是我将图像源绑定到图像控件的方法。

<Image x:Name="WriterImage"  Stretch="None" Source="{Binding Path=PersonData.Photo.MediaImageSource"></Image>

public ImageSource MediaImageSource
{
    // Here _MediaUrl gets a value: ms-appx:///Data/Media/Writer1.jpg   
    BitmapImage source = new BitmapImage(new Uri(_MediaUrl));

} 

仅当我将 Writer1.jpg 作为资源添加到项目时才有效。如果我从项目中删除它,它就不会出现。

【问题讨论】:

    标签: wpf xaml data-binding windows-runtime winrt-xaml


    【解决方案1】:

    请注意,您的应用程序可以访问不同的 URL 方案:

    ms-appx:/// 是一个只读位置,指的是包含(编译)在您的应用程序中的文件,例如资源。

    ms-appdata:///local/ 是指应用程序的本地读写存储。如果你正在下载文件,我猜你应该使用这个 URL 方案。

    对于上面的示例,我会尝试使用以下 URL:

    ms-appdata:///local/Data/Media/Writer1.jpg

    有关 URL (URI) 方案的更多信息,请参阅以下内容:http://msdn.microsoft.com/en-us/library/windows/apps/jj655406.aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-14
      • 2012-11-28
      • 1970-01-01
      • 2012-10-24
      • 2021-04-06
      相关资源
      最近更新 更多