我正在研究每 2 分钟刷新一次的 ListView。列表视图使用多个模板(使用自定义 itemTemplate 函数分配)
由于我在列表视图中有多个模板,我不能简单地使用 dataSource.change 函数更新数据。我必须重置数据源,以便根据最新数据它应该能够再次选择正确的模板。
但是,当我重新分配 dataSource 时,会出现令人分心的闪烁动画。我想摆脱那个动画。
var listView = element.querySelector('.my-list-view').winControl;
var list = new WinJS.Binding.List(data);
listView.itemTemplate = function (itemPromise) {
return itemPromise.then(function (item) {
var container = document.createElement("div");
var itemTemplate;
switch (item.data.status) {
case "Final":
itemTemplate = element.querySelector(".final-template");
break;
case "NotFinal":
itemTemplate = element.querySelector(".not-final-template");
break;
}
itemTemplate.winControl.render(item.data, container);
container.style.height = '120px';
container.style.width = '380px';
return container;
});
};
listView.itemDataSource = list.dataSource;
listView.addEventListener("contentanimating", function (e) { e.preventDefault() });