WinJs-Data绑定自定义arrayList

时间:2013-03-28 10:53:45

标签: javascript microsoft-metro windows-store-apps winjs

在我看来这么复杂,我尝试了许多事情,但没有结果。 我想在我的Metro应用程序(Winjs / HTML)上创建一个水平列表视图,因此创建模板和listView html元素。 从我将获得我的image_url的DataSource的问题是高级的。 这是从我的Json Web服务返回的这个DataSource的形式(我不知道它是否是HashTable,ListArray ...... ??):

"path_categories":
{
"star":"the image url ",
"Fruits ": " the image url ",
"Animaux":"the image url ",
"Country":"the image url ",
"Coulor":"the image url ",
"Town":"the image url ",
"capital":"the image url "
}

我可以将特定属性设置为与my绑定 在此处输入代码                                    

任何帮助都会受到赞赏,Thinks

1 个答案:

答案 0 :(得分:0)

您的视图模型需要使用进入的数据并公开类似这样的项目。

var ViewModel = WinJS.Class.define(
    function ViewModel(data)
    {
        var categories = data.path_categories;
        var keys = object.keys(categories);
        var items = [];
        for (var i = 0; i < keys.length; i++)
        {
            var imageUrl = categories[key];
            var item = { imageUrl : imageUrl };
            items.push(item);
        }

        this.items = new WinJS.Binding.List(items);
    });

function ondataload(data)
{
    var viewModel = new ViewModel(data);
    listView.winControl.itemDataSource = viewModel.items.dataSource;
}

HTH。