将元素添加到ListView的方法

A method to add an element to a ListView

本文关键字:方法 ListView 元素 添加      更新时间:2023-09-26

是否有一个方法来添加一个元素到ListView?我的目标是在不绑定数据的情况下做到这一点!例如:

     myListView.add("one");
     myListView.add("two");

ecc

只需将该项目添加到初始列表中。如果你有绑定设置,这将自动发生。

Html

<>之前<div id="simpleBinding" data-win-control="WinJS.UI.ListView"></div> <div id="simpleBindingTemplate" data-win-control="WinJS.Binding.Template"> <h3 data-win-bind="innerText:name" /> <span>Name :</span><span data-win-bind="textContent: name"></span> <img data-win-bind="src:imageUrl" /> </div>之前Javascript

<>之前 //Note you could also declare an object type to use here, //and instantiate them in the list below var Person = WinJS.Binding.define({ name: "", birthday: "" }); //Using the above object //var people = [ // new Person({ name: "Bob", birthday: "2/2/2002" }), // new Person({ name: "Sally", birthday: "3/3/2003" }), // new Person({ name: "Fred", birthday: "2/2/2002" }) //]; //Or simply using JSON var people = [{ name: 'mary', birthday: '1/1/2010' }, { name: 'fred', birthday: '1/1/2012' }]; //create the binding wrapper var simpleFriends = new WinJS.Binding.List(people); //get the ref to your list view var simpleListView = document.getElementById('simpleBinding').winControl; //get your template var simpleTemplate = document.getElementById('simpleBindingTemplate'); simpleListView.itemDataSource = simpleFriends.dataSource; //can also set in the markup for this element simpleListView.itemTemplate = simpleTemplate; //add a new item. the binding update happens automatically //Could use a Person object we defined //simpleFriends.push(new Person({ name: "Dynamically added", birthday: "2/2/2002"})); //or JSON simpleFriends.push({ name: "Dynamically added", birthday: "2/2/2002"}); 之前

要删除项目,您可以使用pop或查看这篇文章的索引方法从WinJS.Binding.List中删除项

App Builder上有一些很好的绑定内容'Day 10' App Builder