保存并加载图片windows 8 app

时间:2014-01-20 16:03:07

标签: c# json xaml

我在Windows 8商店应用中保存和打开图片时遇到了一些麻烦。 让我来解释一下: 我们正在制作一个相机应用程序,它应该保存带有标题和描述的图片(可能在图片库中)并加载它们以向他们展示漂亮的组。我们正在使用Json来保存标题和描述以及(我认为不聪明)数据的文件路径。

然而,我无法找到如何从我的路径重新加载图片。

<Image Source="{Binding ImagePath}" Stretch="UniformToFill" AutomationProperties.Name="{Binding Title}"/>

这是我从我的路径加载图像的方式,它只适用于我项目的Assets /文件夹中的图片。不适用于图片库。

       private async Task GetSampleDataAsync()
    {
        if (this._groups.Count != 0)
            return;

        Uri dataUri = new Uri("ms-appx:///DataModel/SampleData.json");

        StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(dataUri);
        string jsonText = await FileIO.ReadTextAsync(file);
        JsonObject jsonObject = JsonObject.Parse(jsonText);
        JsonArray jsonArray = jsonObject["Groups"].GetArray();

        foreach (JsonValue groupValue in jsonArray)
        {
            JsonObject groupObject = groupValue.GetObject();
            SampleDataGroup group = new SampleDataGroup(groupObject["UniqueId"].GetString(),
                                                        groupObject["Title"].GetString(),
                                                        groupObject["Subtitle"].GetString(),
                                                        groupObject["ImagePath"].GetString(),
                                                        groupObject["Description"].GetString());

            foreach (JsonValue itemValue in groupObject["Items"].GetArray())
            {
                JsonObject itemObject = itemValue.GetObject();
                group.Items.Add(new SampleDataItem(itemObject["UniqueId"].GetString(),
                                                   itemObject["Title"].GetString(),
                                                   itemObject["Subtitle"].GetString(),
                                                   itemObject["ImagePath"].GetString(),
                                                   itemObject["Description"].GetString(),
                                                   itemObject["Content"].GetString()));
            }
            this.Groups.Add(group);
        }
    }

这是我从json文件加载数据的方式。我不知道这是否有用

我希望很清楚我的问题是什么?如果您需要,我可以提供更多信息。

我的英语不是很好,所以如果你有疑问,我可以提供答案。

1 个答案:

答案 0 :(得分:0)

对于其他会找到此页面的人,我通过在Windows中使用本地文件夹来修复它。 您可以使用

访问本地文件夹
ms-appdata:///local/dfds.jpg